Advertisement
Guest User

Untitled

a guest
Apr 27th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.60 KB | None | 0 0
  1. //submultimi
  2. #include <iostream>
  3. using namespace std;
  4. const int N=50;
  5. int A[100],i,st[N],k,n,as,ev;
  6.  
  7. void init(){st[k]=-1;}
  8. void succesor(){as=0;
  9. if(st[k]<1)
  10. {
  11. as=1;
  12. st[k]++;
  13. }
  14.  
  15. }
  16. void valid(){ev=1;}
  17.  
  18. void tipar(){int i;
  19. for(i=1;i<=n;++i) if(st[i])cout<<A[i]<<" ";
  20. cout<<endl;}
  21.  
  22. int solutie(){return k==n;}
  23.  
  24. void backk(){k=1;
  25. init();
  26. while(k) { do{
  27. succesor();
  28. if(as) valid();
  29. } while(as&&!ev);
  30. if(as) if(solutie()) tipar();
  31. else{++k;init();}
  32. else --k;}}
  33.  
  34.  
  35. int main(){
  36. cout<<"Dati n:";
  37. cin>>n;
  38. for(i=1;i<=n;++i) cin>>A[i];
  39. backk();
  40. return 0;
  41.  
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement