核心逻辑

之所以能够贪心的前提,是不同的加油站有不同的价格,所以想要实现整体最优(最便宜的总价格),那么就不能只看到眼下的,一次性加满,不够再补加。(这样就太狂野粗放了)。
所以,要实现贪心,首先就是要往后多考虑一步
因为题目假设的初始条件是初始油箱未空,所以如果不存在距离为0的加油站,直接打印结束。
如果有距离为0,那就可以考虑下一个加油站了(前提是已经按照距离从小到大排序。)
在考虑下一个加油站时考虑下面这几个因素:

  • 值不值得加,即下一个加油站的价格是否更低?
  • 能不能加,即,加满油箱后能不能到达?
  • 每一个当下的加油站和下一个加油站之间都如此考虑。(所以可用while循环)

然后,考虑跑一半,没有油,也没有加油站了,这时候就是需要打印退出了。
产生这个结果的前提,加满油了,也跑不到下一个加油站。