代码实现:
class Solution {
public int maxProfit(int[] prices) {
int ans = 0;
for (int i = 1; i < prices.length; i++) {
ans += Math.max(prices[i] - prices[i - 1], 0);
}
return ans;
}
}
代码实现:
class Solution {
public boolean canJump(int[] nums) {
if (nums.length == 1) return true;
int cover = 0;
for (int i = 0; i <= cover; i++) {
cover = Math.max(cover, i + nums[i]);
if (cover >= nums.length - 1) return true;
}
return false;
}
}
代码实现:
class Solution {
public int jump(int[] nums) {
if (nums.length == 1) return 0;
int count = 0;
int curCover = 0;
int maxCover = 0;
for (int i = 0; i < nums.length; i++) {
maxCover = Math.max(maxCover, i + nums[i]);
if (maxCover >= nums.length - 1) {
count++;
break;
}
if (i == curCover) {
curCover = maxCover;
count++;
}
}
return count;
}
}