Advertisement
Gireada

Tema Info

Mar 24th, 2014
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.71 KB | None | 0 0
  1. //aranjamente
  2. #include<iostream>
  3. #include <string.h>
  4. using namespace std;
  5. int st[20],n,k;
  6. char nume[5][20];
  7. char nume2[1][20];
  8.  
  9. void init()
  10. {
  11.     int i;
  12.     cout<<"n=";cin>>n;
  13.     cout<<"k=";cin>>k;
  14.     for(i=1;i<=n;i++)
  15.     {
  16.         st[i]=0;
  17.         cin>>nume[i];
  18.     }
  19. }
  20.  
  21. void tipar(int p)
  22. {
  23.     int j;
  24.     for(j=1;j<=p;j++)
  25.         cout<<nume[j]<<" ";
  26.     cout<<endl;
  27. }
  28.  
  29. int valid(int p)
  30. {
  31.     int i,ok;
  32.     ok=1;
  33.     for(i=1;i<p;i++)
  34.         if(strcmp(nume[p],nume[i]) == 0)
  35.             ok=0;
  36.  
  37.     return ok;
  38. }
  39.  
  40. int solutie(int p)
  41. {
  42.     return (p==k);
  43. }
  44.  
  45. void bkt(int p)
  46. {
  47.     int val;
  48.     for (val=1;val<=n;val++)
  49.     {
  50.         st[p]=val;
  51.         if (valid(p))
  52.             if(solutie(p))
  53.                 tipar(p);
  54.             else
  55.             bkt(p+1);
  56.     }
  57. }
  58.  
  59. int main()
  60. {
  61.     init();
  62.     bkt(1);
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement