LeetCode-134
解题思路
解法一:暴力法
class Solution {
public:
int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {
int len=gas.size();//get the array length
int i,j,remain;
for ( i = 0; i < len; i++) {
j = i;
remain = gas[i];
//当前剩余的油能否到达下一个点
while (remain - cost[j] >= 0) {
//减去花费的加上新的点的补给
remain = remain - cost[j] + gas[(j + 1) % len];
j = (j + 1) % len;
//j 回到了 i
if (j == i) {
return i;
}
}
}
//任何点都不可以
return -1;
}
};
小结
不行,直接想,总是思考太不全面了。拿到问题如果先下手去做,要么就是问题太简单了,要么就是再做狗屋。
不管问题多么简单,都要还是在纸上来。