/*gas数量和cost数量是一定的,total大于0则说明能够找到一个节点i,使条件成立,而sum用来判断节点i 是否能作为出发点,sum小于0时,则将下一节点保存起来。
*/
class Solution {
public:
int canCompleteCircuit(vector<int> &gas, vector<int> &cost) {
int i, j;
int total = 0,sum=0;
j = -1;
for (i = 0; i < gas.size(); i++)
{
sum += gas[i] - cost[i];
total += gas[i] - cost[i];
if (sum < 0)
{
j = i;
sum = 0;
}
}
return total >= 0 ? j + 1 : -1;
}
};
【LeetCode】Gas Station
最新推荐文章于 2024-10-12 23:30:39 发布