Advertisement
Ne-Biolog

Untitled

Feb 18th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5.  
  6.  
  7. string a[50];
  8. int al[50] = {0};
  9.  
  10. int dva(vector<int> a){
  11. int carry = 0;
  12. int b = 2;
  13. int n = 0;
  14. while(carry == 0){
  15. for (int i=(int)a.size()-1; i>=0; --i) {
  16. long long cur = a[i] + carry * 1ll * 10;
  17. a[i] = int (cur / b);
  18. carry = int (cur % b);
  19. }
  20. if(carry == 0) n++;
  21. while (a.size() > 1 && a.back() == 0) a.pop_back();
  22. }
  23. return n;
  24. }
  25.  
  26. int main(){
  27. int rrr;
  28. cin >> rrr;
  29. a[1] = "2";
  30. al[1] = 1;
  31. for(int i = 2; i <= 42; i++){
  32. if(al[i - 1] == i - 1){
  33. a[i] = "1" + a[i - 1];
  34. vector<int> x;
  35. for(int j = a[i].length() - 1; j > -1; j--) x.push_back(a[i][j] - 48);
  36. al[i] = dva(x);
  37. } else {
  38. a[i] = "2" + a[i - 1];
  39. vector<int> x;
  40. for(int j = a[i].length() - 1; j > -1; j--) x.push_back(a[i][j] - 48);
  41. al[i] = dva(x);
  42. }
  43. }
  44. cout << a[rrr];
  45. return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement