1. 程式人生 > >八皇后問題優化版(含程式碼)

八皇后問題優化版(含程式碼)

之前發表過一個版本的八皇后,後來在洛谷上看到了另一個八皇后(其實是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內通過。