比赛 皇后 评测结果 AAAAAAAAAA
题目名称 N皇后问题 最终得分 100
用户昵称 liuyu 运行时间 0.008 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2017-03-19 19:21:31
显示代码纯文本
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;

int n,tot=0,a[50];

void search(int b)
{
	if(b==n)tot++;
	else{
		for(int i=0;i<n;i++)
		{
			int is=1;
			a[b]=i;
		    for(int j=0;j<b;j++)
		    {
		    	if(a[j]==i||j+a[j]==a[b]+b||j-a[j]==b-a[b])
		    	 {
		    	 	is=0;break;
				 }
			}
//			cout<<tot;
		    if(is)search(b+1);
		 	
		 }
	}
}

int main()
{
	freopen("queen.in","r",stdin);
	freopen("queen.out","w",stdout);
	cin>>n;
	search(0);
	cout<<tot;
	return 0;	
}