134. 加油站
根据答案意思,对于[x, y],区间,如果从x起步无法到达y之后的一个,则所有x和y区间内部的点起步都无法到达y的后一个点。但内部任意起点可以到达y和y之前加油站由此可以避开许多的起始点判定。
证明:
符合上述条件的区间中存在这样的关系 \[
\sum_{i=x}^{y}gas[i] < \sum_{i=x}^{y}cost[i]\newline
\sum_{i=x}^{j}gas[i] >= \sum_{i=x}^{j}cost[i]\ j \in [x, j) \newline
\] 第一个式子表明无法到达加油站y
的下一个加油站,第二个式子表明从x出发可以到达 y
以及y
之前的所有加油站。
则对于区间中任意节点z \[ \sum_{i=z}^{y}gas[i]\newline = \sum_{i=x}^{y}gas[i] - \sum_{i=x}^{z - 1}gas[i]\newline < \sum_{i=x}^{y}cost[i] - \sum_{i=x}^{z - 1}gas[i]\newline < \sum_{i=x}^{y}cost[i] - \sum_{i=x}^{z - 1}cost[i]\newline = \sum_{i=z}^{y}cost[i] \]
1 | class Solution { |