UVA750 UVALive5358 8 Queens Chess Problem题解

代码来源:DeathYmz


AC的C++语言程序如下:

#include
#include
#include
//很坑很坑的输出 !!!!! 
using namespace std;
const int N=8;
int n,top;
int x,y;
int C[N],vis[3][2*N]; 
void search(int cur)//问题只要求八个   cur行i列 
{
	if(cur==8) 
	{
		printf("%2d     ",++top);
		for(int i=0;i<8;i++)
	    printf(" %d",C[i]+1);
		printf("\n");
		return; 
	}
		///走到这,所有皇后不冲突
	if(cur==y) search(cur+1);
	else 
	for(int i=0;i<8;i++)
	{
		if(!vis[0][i]&&!vis[1][cur+i]&&!vis[2][cur-i+8])//判断 
		{
			C[cur]=i;
			//cout<<"emmmm: "<



你可能感兴趣的:(#,ICPC-问题与代码,#,转发转载)