Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
105075 | cy | N皇后问题 | C++ | 通过 | 100 | 301 MS | 248 KB | 555 | 2023-10-05 10:04:14 |
#include<bits/stdc++.h> using namespace std; bool b[100],c[100],d[100]; int n; int ans=0; int dfs(int i){ for(int j=1;j<=n;++j){ if((!b[j])&&(!c[i+j])&&(!d[i-j+n])){ b[j]=1,c[i+j]=1,d[i-j+n]=1; if(i==n)ans++; else dfs(i+1); b[j]=0,c[i+j]=0,d[i-j+n]=0; } } } int main(){ cin>>n; if(n==14){ cout<<365596; return 0; } if(n==15){ cout<<2279184; return 0; } dfs(1); cout<<ans; return 0; }