码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode134

时间:2018-10-21 21:49:30      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:can   else   com   tin   size   tco   ==   get   tor   

class Solution {
public:
    inline int get_next(int idx, int size)
    {
        return idx == size-1 ? 0 : idx+1;
    }
    
    int aux(int idx, vector<int>& gas, vector<int>& cost)
    {
        int i = idx;
        int left = gas[i] - cost[i];
        if(left < 0)
            return -1;
        i = get_next(i, gas.size());
        while( i!= idx)
        {
            left = left + gas[i] - cost[i];
            if(left < 0)
                return -1;
            i = get_next(i, gas.size());
        }
        return idx;
    }
    
    
    
    int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {
        int ret;
        int i = 0;
        for(; i<gas.size(); ++i)
        {
            if(gas[i] >= cost[i])
            {
                ret = aux(i, gas, cost);
                cout << ret << endl;
                if(ret == -1)
                    continue;
                else
                    break;
            }
        }
        return ret;
    }
};

 

leetcode134

标签:can   else   com   tin   size   tco   ==   get   tor   

原文地址:https://www.cnblogs.com/asenyang/p/9826603.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!