122.买卖股票的最佳时机 II
给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格
class Solution:
def maxProfit(self, prices: List[int]) -> int:
result=0
for i in range(1,len(prices)):
result+=max(prices[i]-prices[i-1],0)
return result
55. 跳跃游戏
class Solution:
def canJump(self, nums: List[int]) -> bool:
cover=0
if len(nums)==1:
return True
i=0
while i<=cover:
cover = max(i + nums[i], cover)
if cover >= len(nums) - 1:
return True
i += 1
return False
45.跳跃游戏 II
给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置
class Solution:
def jump(self, nums: List[int]) -> int:
if len(nums)==1:
return 0
cur_distance=0
ans=0
next_distance=0
for i in range(len(nums)):
next_distance=max(nums[i]+i,next_distance)
if i==cur_distance:
ans+=1
cur_distance=next_distance
if next_distance >= len(nums) - 1:
break
return ans