八皇后问题优化版(含代码)

之前发表过一个版本的八皇后,后来在洛谷上看到了另一个八皇后(其实是N皇后)。这个最大到达13,对剪枝要求较高。之前版本的程序有一个测试点无法通过。

提供参考代码:

#include 
#include 
#include 
#include 
#include 
#define llat(x) ll[x+50]
#define lrat(x) lr[x+50]
using namespace std;
char a[14];
char uCr[14];
char ll[100],lr[100];
int cnt=0;
int n=0;
int dfs(char line)
{
	char i,j;
	if(line==n)
	{
		cnt++;
		if(cnt<=3)
		{
			for(i=0;i>n;
	memset(a,0,sizeof(a));
	memset(uCr,0,sizeof(uCr));
	memset(ll,0,sizeof(ll));
	memset(lr,0,sizeof(lr));
	dfs(0);
	cout<

本代码在输入13的时候可以在600ms内通过。

你可能感兴趣的:(八皇后问题优化版(含代码))