⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queen.cpp

📁 随机算法
💻 CPP
字号:
// Queen.cpp: implementation of the CQueen class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Queen.h"
#include "RandomNumber.h"
#include "math.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
extern node;
CQueen::CQueen()
{

}

CQueen::~CQueen()
{

}
bool CQueen::Place(int k)
{
	for(int j=1;j<k;j++)
		if((abs(k-j)==abs(x[j]-x[k]))||(x[j]==x[k]))
			return false;
	return true;
}
bool CQueen::QueensLV(void)
{
	CRandomNumber rnd;
	int k=1;
	int count=1;
	node=0;
	while ((k<=n)&&(count>0))
	{
		count=0;
		int j=0;
		for(int i=1;i<=n;i++)
		{
			x[k]=i;
			node++;
			if(Place(k))
				if(rnd.Random(++count)==0)
					j=i;
		}
	if(count>0)
		x[k++]=j;
	}
	return(count>0);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -