Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<math.h>
- int column[20],count,n,a[20][20];
- bool find_position(int row,int col)
- {
- for(int i=1;i<=row;i++)
- if((abs(row - i) == abs(col - column[i])) || (col == column[i]))
- return false;
- return true;
- }
- int print_solution()
- {
- count++; printf("%d\n",count);
- for(int i=1;i<=n;i++)
- {for(int j =1;j<=n;j++)
- printf("%d ",a[i][j]); printf("\n");}
- printf("\n");
- }
- int find_queen(int row)
- {
- for(int col=1;col<=n;col++)
- {
- if(find_position(row,col))
- {
- column[row]=col;
- a[row][col]=1;
- for(int i =1;i<column[1];i++) a[1][i] = 0;
- if (row==n) print_solution();
- else find_queen(row+1);
- }
- else a[row][col]=0;
- }
- }
- int main()
- {
- count=0;
- n=4;
- find_queen(1);
- getchar();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement