求助 RE。
代码:
#include<bits/stdc++.h>
using namespace std;
int n, p[100005], q[100005], t;
void Solve(){
cin >> t;
for(int l = 1; l <= t; l++){
cin >> n;
for(int i = 1; i <= n; i++){
cin >> p[i];
}
for(int i = 1; i <= n; i++){
cin >> q[i];
}
bool flag = false;
for(int i = 1; i <= n; i++){
long long sum = 0;
flag = false;
for(int j = i; j <= i + n; j++){
sum += p[j];
sum -= q[j];
if(j != i + n && sum <= 0){
i = (j + 1) % n + 1;
flag = true;
break;
}
if(j == n && sum < 0){
i = (j + 1) % n + 1;
flag = true;
break;
}
}
if(!flag){
cout << "Case " << l << ": Possible from station " << i << endl;
break;
}
}
if(flag){
cout << "Case " << l << ": Not possible\n";
}
}
}
int main(){
Solve();
return 0;
}