Gas Station
不妨设车站为:A,B,C,D,E,F 围成一圈(F 下一个回到 A)
提示:假设从A开始,可以走到C,并且到C后再走,到不了D,那么不论从A,B,C中的任何一个为起点,都到不了D
下面的自己想明白了如何操作再看
=======================================
思路更新:
其实只需遍历一遍即可
total 记录总油耗,转一圈之后如果 total < 0 说明无解
tank 记录油箱中的油 >= 0 的状态,并设置一个 pos 记录目前油箱保持连续 >= 0 状态的起始点
如果最后 total >= 0 那么这个起始点记为所求
(稍微有点dp思想)
我的操作:
操作的时候可以用两个指针,一个指向起点,另一个指向目前可以行驶到的点,当快的追上慢的就说明能行驶一圈,如果慢的走过了一圈还没被追上,说明都不行
时间复杂度为 O(n)