Advertisement
monyca98

produs cartezian

May 30th, 2016
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.85 KB | None | 0 0
  1. #include<iostream>
  2. using namespace std;
  3. int succesor(int st[20],int k,int v[20])
  4. {   if(st[k]<v[k])
  5.     {   st[k]++;
  6.         return 1;
  7.     }
  8.     else
  9.         return 0;
  10. }
  11. int valid()
  12. { return 1;
  13. }
  14. int tipar(int st[20],int n)
  15. {   for(int i=1;i<=n;i++)
  16.         cout<<st[i];
  17.     cout<<endl;
  18. }
  19. void bt(int n,int k,int st[20],int v[20])
  20. {   int as,ev;
  21.     k=1;
  22.     st[k]=0;
  23.     while(k>0)
  24.     {   as=1;
  25.         ev=0;
  26.         while(as && !ev)
  27.         {   as=succesor(st,k,v);
  28.             if(as)
  29.                 ev=valid();
  30.         }
  31.         if(as)
  32.             if(k==n)
  33.                 tipar(st,n);
  34.             else
  35.             {   k++;
  36.                 st[k]=0;
  37.              }
  38.         else
  39.             k--;
  40.     }
  41. }
  42. int main()
  43. {   int n,k,st[20],v[20];
  44.     cin>>n;
  45.     for(int i=1;i<=n;i++)
  46.         cin>>v[i];
  47.     bt(n,k,st,v);
  48.  
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement