fork download
  1.  
  2. //bkt recursiv
  3. //2 aranjamente
  4. #include <iostream>
  5.  
  6. using namespace std;
  7.  
  8. int n ,st[100],k;
  9.  
  10. int bun(int pas)
  11. {
  12. int i;
  13. for (i=1;i<pas;i++)
  14. if (st[pas]==st[i])return 0;
  15. return 1;
  16. }
  17.  
  18. int sol(int pas)
  19. {
  20. return pas==k;
  21. }
  22.  
  23. void afisare()
  24. {
  25. int i;
  26. for(i=1;i<=k;i++)
  27. cout<< st[i];
  28. cout << endl;
  29. }
  30.  
  31. void BKT(int pas)
  32. {
  33. int i;
  34. for (i=1;i<=n;i++)
  35. {
  36. st[pas]=i;
  37. if (bun(pas))
  38. if (sol(pas))afisare();
  39. else BKT(pas+1);
  40. }
  41. }
  42.  
  43. int main()
  44. {
  45. n=3;
  46. k=2;
  47. BKT(1);
  48. return 0;
  49. }
  50.  
Success #stdin #stdout 0s 5316KB
stdin
Standard input is empty
stdout
12
13
21
23
31
32