Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
8677 | D班-西瓜 | 八皇后 | C++ | 通过 | 100 | 2 MS | 252 KB | 579 | 2025-04-03 15:55:54 |
#include <bits/stdc++.h> using namespace std; int n,t,a[10],b[10],c[20],d[20],cnt=0,ans[100]; void save() { cnt++; for(int i = 1; i<=8; i++) { ans[cnt] = ans[cnt]*10+a[i]; } } void search(int i) { for(int j = 1; j<=8; j++) { if(b[j] == 0 && c[i-j+7]==0 && d[i+j]==0) { a[i]=j; b[j]=1; c[i-j+7]=1; d[i+j]=1; if(i==8) { save(); } else { search(i+1); } b[j]=0; c[i-j+7]=0; d[i+j]=0; } } } int main() { cin >> n; search(1); while(n--) { cin >> t; cout << ans[t] << endl; } return 0; }