arten_1337

Untitled

Feb 10th, 2020
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.73 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define IOS                  \
  5.     ios::sync_with_stdio(0); \
  6.     cin.tie(0);              \
  7.     cout.tie(0);
  8. #define endl "\n"
  9. #define int long long
  10.  
  11. int32_t main()
  12. {
  13.     IOS;
  14.     vector<int> dp(20000001);
  15.  
  16.     dp[1] = 0;
  17.     for (int i = 2; i < 20000001; i++)
  18.     {
  19.         int x = INT_MAX, y = INT_MAX, z = INT_MAX;
  20.         if (i % 2 == 0)
  21.         {
  22.             x = dp[i / 2] + 1;
  23.         }
  24.         if (i % 3 == 0)
  25.         {
  26.             y = dp[i / 3] + 1;
  27.         }
  28.         z = dp[i - 1] + 1;
  29.         dp[i] = min(x, min(y, z));
  30.     }
  31.     int t, n;
  32.     cin >> t;
  33.     while (t--)
  34.     {
  35.         cin >> n;
  36.         cout << dp[n] << endl;
  37.     }
  38.  
  39.     return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment