public class Main {
static int max=8,j=0;
static int[] a=new int[max];
public static boolean judge(int x)
{
int i;
for(i=0;i<x;i++)
{
if(a[i]==a[x]||Math.abs(a[i]-a[x])==(x-i))
{
return false;
}
}
return true;
}
public static void bianli(int n)
{
if(n==max)
{
j++;
return;
}
for(int i=0;i<max;i++)
{
a[n]=i;
if(judge(n))
bianli(n+1);
}
}
public static void main(String[] args) {
bianli(0);
System.out.println("八皇后的解法总数为: "+j+"种");
}
}
八皇后递归解决
最新推荐文章于 2021-12-22 22:23:09 发布