fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. using ll=long long;
  4.  
  5. ll n,cot[14],c1[200],c2[200],kq[14];
  6. void xuat()
  7. {
  8. for(int i=1;i<=n;i++)
  9. cout<<kq[i]<<' ';
  10. cout<<endl;
  11. }
  12. void xephau(int hang)
  13. {
  14. if(hang==n+1)
  15. {
  16. xuat();
  17. return;
  18. }
  19. for(int i=1;i<=n;i++)
  20. {
  21. if(!cot[i] && !c1[i+hang] && !c2[abs(i-hang)+(i-hang<0?n:0)])
  22. {
  23. kq[hang]=i;
  24. cot[i]=c1[i+hang]=c2[abs(i-hang)+(i-hang<0?n:0)]=1;
  25. xephau(hang+1);
  26. cot[i]=c1[i+hang]=c2[abs(i-hang)+(i-hang<0?n:0)]=0;
  27. }
  28. }
  29. }
  30. int main()
  31. {ios_base::sync_with_stdio(0);
  32. cin.tie(0);cout.tie(0);
  33. freopen("queen.inp","r",stdin);
  34. freopen("queen.out","w",stdout);
  35. cin>>n;
  36. xephau(1);
  37. }
  38.  
Success #stdin #stdout 0s 5324KB
stdin
Standard input is empty
stdout
Standard output is empty