记录编号 449383 评测结果 AAAAAAAAAA
题目名称 N皇后问题 最终得分 100
用户昵称 Gravatar皓芷 是否通过 通过
代码语言 C++ 运行时间 0.009 s
提交时间 2017-09-14 10:10:11 内存使用 0.31 MiB
显示代码纯文本
#include<cstdio>
#include<iostream>
#define mysister
using namespace std;
int n,a[17][17],vis[17],visr[33],visl[32],ans=0;
void dfs(int u)
{
	if(u==n){ans++;return;}
	u++;
	for(int i=1;i<=n;i++)
	  if((!vis[i])&&(!visr[u+i])&&(!visl[i-u+n])&&(!a[u][i]))
	  {
	  	vis[i]=visr[u+i]=visl[i-u+n]=1;
	  	dfs(u);
	  	vis[i]=visr[u+i]=visl[i-u+n]=0;
	  }
}
int main()
{
	freopen("queen.in","r",stdin);
	freopen("queen.out","w",stdout);
	scanf("%d",&n);
//	for(int i=1;i<=n;i++)
//	  for(int j=1;j<=n;j++)
//	    scanf("%d",&a[i][j]);
	dfs(0);
	printf("%d",ans);
	return 0;
}