Advertisement
Diene

Untitled

Mar 1st, 2018
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.17 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. int function(int n, int m, int a=1, int b=1)
  6. {
  7.  
  8.     if(n==1 && m==1)
  9.     {
  10.         a==a;
  11.         b==b;
  12.     }
  13.  
  14.     else if(n!=1 && m==1)
  15.     {
  16.  
  17.         if(n%2==0)
  18.         {
  19.             return function(n/2,1,a++,b==b);
  20.         }
  21.  
  22.         else if(n%2==1)
  23.         {
  24.             return function(3*n+1,1,a++,b==b);
  25.         }
  26.  
  27.     }
  28.  
  29.     else if(n==1 && m!=1)
  30.     {
  31.  
  32.         if(m%2==0)
  33.         {
  34.             return function(1,m/2,a==a,b++);
  35.         }
  36.  
  37.         else if(m%2==1)
  38.         {
  39.             return function(1,3*m+1,a==a,b++);
  40.         }
  41.  
  42.     }
  43.  
  44.     else if(n%2==0 && m%2==0)
  45.     {
  46.  
  47.         return function(n/2, m/2,a++,b++);
  48.     }
  49.  
  50.     else if(n%2==0 && m%2==1)
  51.     {
  52.  
  53.         return function(n/2, 3*m+1,a++,b++);
  54.     }
  55.  
  56.     else if(n%2==1 && m%2==0)
  57.     {
  58.  
  59.         return function(3*n+1, m/2, a++, b++);
  60.     }
  61.  
  62.     else if(n%2==1 && m%2==1)
  63.     {
  64.  
  65.         return function(3*n+1, 3*m+1,a++,b++);
  66.     }
  67.  
  68. }
  69.  
  70. int main()
  71. {
  72.  
  73.     int x,y;
  74.  
  75.     scanf("%d %d", &x, &y);
  76.  
  77.     int a=1, b=1;
  78.  
  79.     function(x,y,a,b);
  80.  
  81.     printf("%d %d %d", x, y, max(a, b));
  82.  
  83.     return 0;
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement