class Solution {
public:
int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {
int n1=size(gas);
for(int k=0;k<n1;k++)
{
int i=k,s=gas[k];
while(i<k+n1)
{
if(s<cost[i%n1]) break;
s+=-cost[i%n1]+gas[(++i)%n1];
}
if(i==k+n1) return k;
k=max(k,i%n1);
}
return -1;
}
};
加油站
最新推荐文章于 2025-03-14 22:34:08 发布