您的位置:首页 > 其它

uva 11093 Just Finish it up (环形跑道水题_模拟)

2015-09-04 20:26 393 查看
题目大意:就是环形的路上,路上有n个加油站,每个加油站可以加一定量的油pi,到达下一个加油站需要消耗qi升油,现在问可以从出发点驶出然后能够到达起点的出发点序号最小是多少,如果不可能输出不可能。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn=101001;
int a[maxn],b[maxn];
int main()
{
int t,n,i,j,sum,num,ans;
cin>>t;
for(int z=1;z<=t;z++) {
cin>>n;
for(i=1;i<=n;i++) cin>>b[i];
sum=0;
for(i=1;i<=n;i++) {
cin>>num;
a[i]=b[i]-num;
sum+=a[i];
}
if(sum<0) {
printf("Case %d: Not possible\n",z);
continue;
}
sum=0;
for(i=1;i<=n;i++) {
sum+=a[i];
if(sum<0) {
sum=0;
ans=i+1;
}
}
printf("Case %d: Possible from station %d\n",z,ans);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: