Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution:
- def integerReplacement(self, n: int) -> int:
- dp = [n + 1] * (n + n)
- dp[0] = 0
- dp[1] = 0
- dp[2] = 1
- for i in range(3, n+1):
- if i % 2 == 0:
- dp[i] = 1 + min(dp[i], dp[i // 2])
- else:
- dp[i] = 1 + min(dp[i], dp[i+1], dp[i-1])
- return dp[n]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement