Advertisement
mickypinata

PROG-T1124: Balance

Jun 6th, 2021
794
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.66 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. typedef long long lli;
  5.  
  6. const int log3N = 19;
  7.  
  8. lli powerOf3[log3N + 10];
  9.  
  10. int main(){
  11.  
  12.     powerOf3[0] = 1;
  13.     for(int i = 1; i <= log3N + 1; ++i){
  14.         powerOf3[i] = powerOf3[i - 1] * 3;
  15.     }
  16.  
  17.     lli tr;
  18.     scanf("%lld", &tr);
  19.     int cnt = 0;
  20.     lli sum = 0;
  21.     for(int i = 0; i <= log3N; ++i){
  22.         int lastDigit = tr % powerOf3[i + 1] / powerOf3[i];
  23.         if(lastDigit == 2){
  24.             ++cnt;
  25.             tr += powerOf3[i + 1];
  26.         } else if(lastDigit == 1){
  27.             ++cnt;
  28.             sum += powerOf3[i];
  29.         }
  30.     }
  31.     cout << cnt << ' ' << sum;
  32.  
  33.     return 0;
  34. }
  35.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement