fork download
  1. #include<iostream>
  2. #include<algorithm>
  3.  
  4. using namespace std;
  5.  
  6. int main(){
  7. int n,i;
  8. int dp[1000001];
  9. cin>>n;
  10.  
  11. dp[0]=0;
  12. dp[1]=0;
  13.  
  14. for(int i=2;i<=n;i++){
  15. dp[i]=dp[i-1]+1;
  16. if(i%2==0){
  17. dp[i]=min(dp[i],dp[i/2]+1);
  18.  
  19. }
  20. if(i%3==0){
  21. dp[i]=min(dp[i],dp[i/3]+1);
  22. }
  23. }
  24. cout << dp[n] << endl;
  25. }
  26.  
Success #stdin #stdout 0s 19016KB
stdin
2
stdout
1