1 条题解
-
0
#include<bits/stdc++.h> using namespace std; int crax[20],cray[20],cx[20]; int ans[20]; int n,tot; void print(void) { tot++; for (int i=1;i<=n;i++) cout<<setw(5)<<ans[i]; putchar('\n'); } void search(int x) { if (x>n) print(); for (int y=1;y<=n;y++) { if (crax[x+y]) continue; if (cray[x-y+10]) continue; if (cx[y]) continue; ans[x]=y; crax[x+y]=1; cray[x-y+10]=1; cx[y]=1; search(x+1); crax[x+y]=0; cray[x-y+10]=0; cx[y]=0; } } int main(void) { scanf("%d",&n); search(1); if (tot==0) puts("no solute!"); return 0; }
- 1
信息
- ID
- 132
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 102
- 已通过
- 35
- 上传者