发信人: agx(~DANCESwithWOLVES~)
整理人: yangcs(2002-01-14 18:36:29), 站内信件
|
#define N 8 /* 棋盘大小*/
void main()
{
int ab[N+1],a[N+1],b[2*N],c[2*N];
int good,t,i;
unsigned long n=0;
for(i=0;i<=N;i++) {ab[i]=0;a[i]=0;}
for(i=0;i<2*N;i++) {b[i]=0;c[i]=0;}
good=1;t=1;ab[t]=1;a[ab[t]]=1;b[N-t+ab[t]]=1;c[t+ab[t]]=1;
puts("");
while(t) { /* */
if(good)
if(t==N) { /* */
for(i=1;i<=N;i++) printf("%d %d,",i,ab[i]);
printf("\n");
n++;
a[ab[t]]=0;b[N-t+ab[t]]=0;c[t+ab[t]]=0;ab[t--]=0;
while(ab[t]==N) { /* */
a[ab[t]]=0;b[N-t+ab[t]]=0;c[t+ab[t]]=0;ab[t--]=0;
}
if(t!=0) { /* */
a[ab[t]]=0;b[N-t+ab[t]]=0;c[t+ab[t]]=0;
ab[t]++;
}
}
else ab[++t]++;
else { /* */
if(ab[t]==N) { /* */
ab[t--]=0;
a[ab[t]]=0;b[N-t+ab[t]]=0;c[t+ab[t]]=0;
}
while(ab[t]==N) { /* */
a[ab[t]]=0;b[N-t+ab[t]]=0;c[t+ab[t]]=0;ab[t--]=0;
a[ab[t]]=0;b[N-t+ab[t]]=0;c[t+ab[t]]=0;
}
if(t!=0) ab[t]++;
2 }
if(a[ab[t]]||b[N-t+ab[t]]||c[t+ab[t]]) good=0;
else { /* */
good=1;
a[ab[t]]=1; b[N-t+ab[t]]=1; c[t+ab[t]]=1;
}
}
printf("\n%ld",n);
}
---- 如果您对您的智商有充分的自信的话 ,欢迎来脑力震荡版 ;)
脑力震荡, 让您脑震荡
休闲时尚 -> [脑力震荡
|
|