Advertisement
rofllmaolol

dame

Feb 26th, 2020
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.90 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4.  
  5. #include <math.h>
  6.  
  7. int st[100],k, n,i,j;
  8. void init()
  9. {
  10.     st[k]=0;
  11. }
  12. int succesor()
  13. {
  14.     if(st[k]<n)
  15.     {
  16.         st[k]++;
  17.         return 1;
  18.     }
  19.     else
  20.         return 0;
  21. }
  22. int valid()
  23. {
  24.     for(i=1;i<k;i++)
  25.             if(st[k]==st[i]||abs(st[k]-st[i])==abs(k-i)) return 0;
  26.                 return 1;
  27. }
  28. int solutie()
  29. {
  30.     return k==n;
  31. }
  32. void tipar()
  33. {  cout<<endl;
  34.     for(i=1;i<=k;i++)
  35.         {cout<<endl; for(j=1;j<=k;j++)
  36.      if(st[i]==j)   cout<<"D";
  37.     else cout<<"*";
  38.     cout<<endl;}
  39. }
  40. void btr()
  41. {
  42.     int AS;
  43.     k=1;
  44.     init();
  45.     while(k>0)
  46.     {
  47.         do
  48.         {}while((AS=succesor())&& (!valid()));
  49.     if(AS)
  50.         if(solutie())
  51.         tipar();
  52.     else
  53.     {
  54.         k++;
  55.         init();
  56.     }
  57.     else k--;
  58. }
  59. }
  60. int main()
  61. {
  62.     cin>>n;
  63.  
  64.     btr();
  65.     return 0;
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement