Advertisement
Guest User

pt safu la bani

a guest
Sep 21st, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.27 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int st[100];
  6. int k,as,ev,m=9,n;
  7.  
  8. int init(int k)
  9. {
  10.     st[k]=-2;
  11. }
  12.  
  13. int succesor(int k)
  14. {
  15.     if(st[k] < m)
  16.     {
  17.         st[k] = st[k] + 1;
  18.         return 1;
  19.     }
  20.     else
  21.         return 0;
  22. }
  23.  
  24. int valid(int k)
  25. {
  26.     for(int i=0;i<k;i++)
  27.     {
  28.         if(st[k]==st[i])
  29.             return 0;
  30.         return 1;
  31.     }
  32. }
  33.  
  34. int solutie(int k)
  35. {
  36.     return k==n;
  37. }
  38.  
  39. void tipar()
  40. {
  41.     int m=st[1],sum=0;
  42.     if(m%2==0)
  43.     {
  44.         for(int i=2;i<=n;i++)
  45.         {
  46.         if(st[i] == -1)
  47.             st[i]=0;
  48.         if(st[i]%2==0 && st[i]<m)
  49.             {
  50.                 m=st[i];
  51.                 sum++;
  52.             }
  53.  
  54.         }
  55.     }
  56.     if(sum==n-1)
  57.     {
  58.         for(int i=1;i<=n;i++)
  59.             cout<<st[i];
  60.         cout<<endl;
  61.     }
  62.  
  63.  
  64. }
  65.  
  66. void bkt()
  67. {
  68.     k=1;
  69.     init(k);
  70.     while(k>0)
  71.     {
  72.         as=1;ev=0;
  73.         while(as &&  !ev)
  74.         {
  75.             as=succesor(k);
  76.             if(as)
  77.                 ev=valid(k);
  78.         }
  79.         if(as)
  80.         {
  81.             if(solutie(k))
  82.                 tipar();
  83.             else
  84.             {
  85.                 k++;
  86.                 init(k);
  87.             }
  88.         }
  89.         else
  90.             k--;
  91.     }
  92. }
  93.  
  94. int main()
  95. {
  96.     cin>>n;
  97.     bkt();
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement