[leetcode] Gas Station

来源:互联网 发布:mac音量键在哪里设置 编辑:程序博客网 时间:2024/06/06 17:32

Gas Station

思路:设置两个变量,sum判断当前的gas station的有效性;total则判断整个vector是否有解,有就返回通过sum得到的下标+1,没有则返回-1。 

class Solution {public:    int canCompleteCircuit(vector<int> &gas, vector<int> &cost) {        int total=0;        int sum=0;        int res=-1;                for(int i=0;i<gas.size();++i){            sum+=gas[i]-cost[i];            total+=gas[i]-cost[i];            if(sum<0){                res=i;//不能满足需求的最后一个点                sum=0;            }        }        if(total>=0){            return res+1;//不能满足需求的最后一个gas station的下一个gas station即可满足需求        }else{            return -1;        }    }};


0 0