当前位置: 代码迷 >> 综合 >> [leetcode] 134. Gas Station (medium)
  详细解决方案

[leetcode] 134. Gas Station (medium)

热度:23   发布时间:2024-01-05 01:12:10.0

原题
题意:
过一个循环的加油站,每个加油站可以加一定数量的油,走到下一个加油站需要消耗一定数量的油,判断能否走一圈。

设置两个变量, sum 判断当前的指针的有效性; total 则判断整个数组是否
有解,有就返回通过 sum 得到的下标,没有则返回-1。

class Solution
{
    public:int canCompleteCircuit(vector<int> &gas, vector<int> &cost){
    int sum = 0;int total = 0;int Ind = -1;for (int i = 0; i < gas.size(); i++){
    sum += gas[i] - cost[i];total += gas[i] - cost[i];if (sum < 0){
    sum = 0;Ind = i;}}return total >= 0 ? Ind + 1 : -1;}
};
  相关解决方案