fork download
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. int n,col[10]={0};
  4. void display()
  5. {
  6. int i,j;
  7. char chess[10][10];
  8. for(i=1;i<=n;i++)
  9. {
  10. for(j=1;j<=n;j++)
  11. {
  12. chess[i][j]='X';
  13. }
  14. }
  15. for(i=1;i<=n;i++)
  16. {
  17. chess[i][col[i]]='Q';
  18.  
  19. }
  20. for(i=1;i<=n;i++)
  21. {
  22. for(j=1;j<=n;j++)
  23. {
  24. printf("%c",chess[i][j]);
  25. }
  26. printf("\n");
  27. }
  28. }
  29.  
  30. int place(int q,int c)
  31. {
  32. int k;
  33. if(col[k]==c||(abs(k-q)==abs(col[k]-c)))
  34. return 0;
  35. else
  36. return 1;
  37.  
  38. }
  39. void queen(int q)
  40. {
  41. int c;
  42. for(c=1;c<=n;c++)
  43. {
  44. if(place(q,c))
  45. {
  46. col[q]=c;
  47. if(q==n)
  48. display();
  49. else
  50. queen(q+1);
  51. }
  52. }
  53. }
  54. int main()
  55. {
  56.  
  57. printf("Enter number of queens\n");
  58. scanf("%d",&n);
  59. queen(1);
  60. return 0;
  61. }
  62.  
Success #stdin #stdout 0s 2056KB
stdin
4
stdout
Enter number of queens
XQXX
QXXX
QXXX
QXXX
XQXX
QXXX
QXXX
XQXX
XQXX
QXXX
QXXX
XXQX
XQXX
QXXX
XQXX
QXXX
XQXX
QXXX
XQXX
XQXX
XQXX
QXXX
XQXX
XXQX
XQXX
QXXX
XXXQ
QXXX
XQXX
QXXX
XXXQ
XQXX
XQXX
QXXX
XXXQ
XXQX
XQXX
XXQX
QXXX
QXXX
XQXX
XXQX
QXXX
XQXX
XQXX
XXQX
QXXX
XXQX
XQXX
XXQX
XQXX
QXXX
XQXX
XXQX
XQXX
XQXX
XQXX
XXQX
XQXX
XXQX
XQXX
XXQX
XXXQ
QXXX
XQXX
XXQX
XXXQ
XQXX
XQXX
XXQX
XXXQ
XXQX
XQXX
XXXQ
QXXX
QXXX
XQXX
XXXQ
QXXX
XQXX
XQXX
XXXQ
QXXX
XXQX
XQXX
XXXQ
XQXX
QXXX
XQXX
XXXQ
XQXX
XQXX
XQXX
XXXQ
XQXX
XXQX
XQXX
XXXQ
XXXQ
QXXX
XQXX
XXXQ
XXXQ
XQXX
XQXX
XXXQ
XXXQ
XXQX
XXQX
QXXX
QXXX
QXXX
XXQX
QXXX
QXXX
XQXX
XXQX
QXXX
QXXX
XXQX
XXQX
QXXX
XQXX
QXXX
XXQX
QXXX
XQXX
XQXX
XXQX
QXXX
XQXX
XXQX
XXQX
QXXX
XXXQ
QXXX
XXQX
QXXX
XXXQ
XQXX
XXQX
QXXX
XXXQ
XXQX
XXQX
XXQX
QXXX
QXXX
XXQX
XXQX
QXXX
XQXX
XXQX
XXQX
QXXX
XXQX
XXQX
XXQX
XQXX
QXXX
XXQX
XXQX
XQXX
XQXX
XXQX
XXQX
XQXX
XXQX
XXQX
XXQX
XXXQ
QXXX
XXQX
XXQX
XXXQ
XQXX
XXQX
XXQX
XXXQ
XXQX
XXQX
XXXQ
QXXX
QXXX
XXQX
XXXQ
QXXX
XQXX
XXQX
XXXQ
QXXX
XXQX
XXQX
XXXQ
XQXX
QXXX
XXQX
XXXQ
XQXX
XQXX
XXQX
XXXQ
XQXX
XXQX
XXQX
XXXQ
XXXQ
QXXX
XXQX
XXXQ
XXXQ
XQXX
XXQX
XXXQ
XXXQ
XXQX
XXXQ
QXXX
QXXX
QXXX
XXXQ
QXXX
QXXX
XQXX
XXXQ
QXXX
QXXX
XXQX
XXXQ
QXXX
XQXX
QXXX
XXXQ
QXXX
XQXX
XQXX
XXXQ
QXXX
XQXX
XXQX
XXXQ
QXXX
XXXQ
QXXX
XXXQ
QXXX
XXXQ
XQXX
XXXQ
QXXX
XXXQ
XXQX
XXXQ
XXQX
QXXX
QXXX
XXXQ
XXQX
QXXX
XQXX
XXXQ
XXQX
QXXX
XXQX
XXXQ
XXQX
XQXX
QXXX
XXXQ
XXQX
XQXX
XQXX
XXXQ
XXQX
XQXX
XXQX
XXXQ
XXQX
XXXQ
QXXX
XXXQ
XXQX
XXXQ
XQXX
XXXQ
XXQX
XXXQ
XXQX
XXXQ
XXXQ
QXXX
QXXX
XXXQ
XXXQ
QXXX
XQXX
XXXQ
XXXQ
QXXX
XXQX
XXXQ
XXXQ
XQXX
QXXX
XXXQ
XXXQ
XQXX
XQXX
XXXQ
XXXQ
XQXX
XXQX
XXXQ
XXXQ
XXXQ
QXXX
XXXQ
XXXQ
XXXQ
XQXX
XXXQ
XXXQ
XXXQ
XXQX