📄 prince.c
字号:
/*
ID: perfect2
PROG: beads
*/
#include <stdio.h>
#include <math.h>
int n;
int x[14];
int place(int k)
{
int i,j;
j=1;
for(i=1;i<k;i++)
if((x[i]==x[k])||(abs(x[i]-x[k])==abs(i-k)))
{
j=0;
break;
}
return j;
}
int main()
{
int j,l=1,k=1;
x[1]=0;
FILE *in=fopen("checker.txt","r");
FILE *out=fopen("checker.out","w");
fscanf(in,"%d",&n);
while(k>0)
{
x[k]=x[k]+1;
while((x[k]<=n)&&(!place(k)))
x[k]=x[k]+1;
if(x[k]<=n)
{
if(k==n)
{
if(l<=3)
{
for(j=1;j<n;j++)
fprintf(out,"%d ",x[j]);
fprintf(out,"%d\n",x[j]);
}
l=l+1;
}
else{k=k+1;x[k]=0;}
}
else k=k-1;
}
fprintf(out,"%d\n",l);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -