放张图在这大家基本就能看懂了,说白了就是一个个试,试到走不下去了换一种情况试。
所以可以通过递归代码实现四皇后问题的求解(因为思路是一样的就是换个数,所以这个代码也可以说是能解决n皇后的问题)。
#include#include #include #define n 4 using namespace std; int count=0; //判断在(x,y)放皇后是否冲突 int judge(int x,int y,int a[n][n]){ for(int i=0;i =0&&j>=0;i--,j--){ if(a[i][j]==1){ return 0; } } //左下 for(int i=x-1,j=y+1;i>=0&&j =0;i++,j--){ if(a[i][j]==1){ return 0; } } //右下 for(int i=x+1,j=y+1;i



