📄 queen.c
字号:
#include "stdio.h"
#include "math.h"
#include "stdlib.h"
void queen(int n)
{ int i,j,k,jt,*q;
q=malloc(n*sizeof(int));
for(i=0; i<n; i++) q[i]=0;
i=0; jt=1;
printf("\n");
printf("%d queen problem\n",n);
while(jt==1)
{ if (q[i]<n)
{ k=0;
while((k<i)&&((q[k]-q[i])*
(fabs(q[k]-q[i])-fabs(k-i)))!=0) k=k+1;
if (k<i) q[i]=q[i]+1;
else
{ if (i==n-1)
{ for(j=0; j<n; j++)
printf("%5d",q[j]+1);
printf("\n");
q[n-1]=q[n-1]+1;
}
else i=i+1;
}
}
else
{ q[i]=0; i=i-1;
if (i<0)
{ printf("\n"); free(q); return; }
q[i]=q[i]+1;
}
}
}
main()
{ int n;
printf("input n=");
scanf("%d",&n);
queen(n);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -