八皇后问题

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int cnt,n=8,a[15],b[105],c[105],d[105];
void dfs(int x)
{
	if(x==9)
	{
		cnt++;
		for(int i=1;i<=n;i++)
		{
			cout<<a[i]<<" ";
		}
		cout<<endl;
		return ;
	}
	for(int i=1;i<=n;i++)
	{
		if(b[i]==0&&c[i+x]==0&&d[i-x+7]==0)
		{
			b[i]=1;
			c[i+x]=1;
			d[i-x+7]=1;
			a[x]=i;
			dfs(x+1);
			b[i]=0;
			c[i+x]=0;
			d[i-x+7]=0;
		}
	}
}
int main()
{
	dfs(1);
	cout<<cnt;
	return 0; 
} 
相关推荐
BirdenT3 小时前
20260519紫题训练
c++·算法
csdn_aspnet8 小时前
C语言 Lomuto分区算法(Lomuto Partition Algorithm)
c语言·开发语言·算法
谙弆悕博士8 小时前
【附C源码】从零实现C语言堆数据结构:原理、实现与应用
c语言·数据结构·算法··数据结构与算法
C+++Python10 小时前
C++ 进阶学习完整指南
java·c++·学习
sparEE10 小时前
c++值类别、右值引用和移动语义
开发语言·c++
jrrz082811 小时前
Apollo MPC Controller
c++·自动驾驶·apollo·mpc·横向控制·lateral control
gaosushexiangji11 小时前
DIC系统推荐:基于千眼狼三维数字图像相关的无人机旋翼疲劳试验全场应变与位移测量
人工智能·算法
小王C语言13 小时前
【线程概念与控制】:线程封装
jvm·c++·算法
学习,学习,在学习13 小时前
Qt工控仪器程序框架设计详解(工控多仪器控制版本)
开发语言·c++·qt
kyle~13 小时前
工程数学---点云配准卡布施(Kabsch)算法(求解最优旋转矩阵)
线性代数·算法·矩阵