Minimum Steps to One
Problem Link: https://www.codingninjas.com/codestudio/problems/min-steps-to-one-using-dp_920548
class solution:
def countStepsToOne(self,n):
# Write your code here
dp=[float('inf') for i in range(n+1)]
dp[0]=0
dp[1]=0
for i in range(2,n+1):
a1=dp[i-1]
a2=float('inf')
if(i%2==0 and i//2>=0):
a2=dp[i//2]
a3=float('inf')
if(i%3==0 and i//3>=0):
a3=dp[i//3]
dp[i]=min(min(a1,a2),a3)+1
return dp[n]
Last updated