File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ /*
2+ * @lc app=leetcode.cn id=134 lang=java
3+ *
4+ * [134] 加油站
5+ */
6+
7+ // @lc code=start
8+ class Solution {
9+ public int canCompleteCircuit (int [] gas , int [] cost ) {
10+ int sum = 0 ;
11+ int tank = 0 ;
12+ int start = 0 ;
13+ for (int i = 0 ; i < cost .length ; i ++) {
14+ sum = sum + gas [i ] - cost [i ];
15+ tank = tank + gas [i ] - cost [i ];
16+ if (tank < 0 ) {
17+ tank = 0 ;
18+ start = i + 1 ;
19+ }
20+ }
21+ if (sum < 0 || start == gas .length )
22+ return -1 ;
23+ return start ;
24+ }
25+ }
26+ // @lc code=end
Original file line number Diff line number Diff line change 1+ /*
2+ * @lc app=leetcode.cn id=45 lang=java
3+ *
4+ * [45] 跳跃游戏 II
5+ */
6+
7+ // @lc code=start
8+ class Solution {
9+ public int jump (int [] nums ) {
10+ int len = nums .length ;
11+ int farthest = 0 ;
12+ int step = 0 ;
13+ int point = 0 ;
14+
15+ for (int i = 0 ; i < len - 1 ; i ++) {
16+ farthest = Math .max (farthest , i + nums [i ]);
17+ if (point == i ) {
18+ point = farthest ;
19+ step ++;
20+ }
21+ }
22+ return step ;
23+ }
24+ }
25+ // @lc code=end
Original file line number Diff line number Diff line change 1+ /*
2+ * @lc app=leetcode.cn id=55 lang=java
3+ *
4+ * [55] 跳跃游戏
5+ */
6+
7+ // @lc code=start
8+ class Solution {
9+ public boolean canJump (int [] nums ) {
10+ if (nums .length == 0 )
11+ return true ;
12+ int len = nums .length ;
13+ int farthest = 0 ;
14+
15+ for (int i = 0 ; i < len - 1 ; i ++) {
16+ farthest = Math .max (farthest , i + nums [i ]);
17+ if (farthest <= i )
18+ return false ;
19+ }
20+
21+ return farthest >= len - 1 ;
22+ }
23+ }
24+ // @lc code=end
You can’t perform that action at this time.
0 commit comments