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

📄 cpp1.cpp

📁 迭代回朔算法是计算机中很常用的算法
💻 CPP
字号:
//迭代回朔
#include<iostream.h>
#include<math.h>
//using namespace std;
#define max 8
int real(int k,int c[])
{ 
	for(int i=1;i<k;i++)
		if(c[k]==c[i]||(abs(c[k]-c[i])==abs(k-i)))
			return 0;
    return 1;
}

int main()
{
	int c[max+1],flag=0,k;
	for(int i=0;i<=max;i++)
		c[i]=0;                         //赋初值
    k=1;
goon:
	while(k>=1&&k<=max)
	{
		while(c[k]<max)
		{
			c[k]=c[k]+1;
		    if(real(k,c)&&k==max)
			{
				flag=1;
			    break;
			}//if					
			else if(real(k,c))
			{
				k=k+1;
			    goto goon;
			}//else if
		}//while
		if(flag)
			break;
		c[k]=0;
		k=k-1;
	}//while



	if(flag)
		for(int i=1;i<=max;i++)
		cout<<c[i]<<" ";
	else
		cout<<"没"<<endl;
	cout<<endl;
	return 0;
}

⌨️ 快捷键说明

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