技术栈

n皇后问题(DFS) C++实现

随风而散y2023-10-30 10:04
cpp 复制代码
#include<iostream>
using namespace std;
const int N=20;
bool col[N],dg[N],udg[N];
int n;
char q[N][N];

void dfs(int u){
    if(u==n){
        for(int i=0;i<n;i++) puts(q[i]);
        puts("");
        return ;
    }
    
    for(int i=0;i<n;i++){
        if(!col[i] && !dg[u+i] && !udg[u+n-i]){
            q[u][i]='Q';
            col[i]=dg[u+i]=udg[u+n-i]=true;
            dfs(u+1);
            col[i]=dg[u+i]=udg[u+n-i]=false;
            q[u][i]='.';
        }
    }
}

int main(){
    scanf("%d",&n);
    for(int i=0;i<n;i++)
        for(int j=0;j<n;j++) q[i][j]='.';
    dfs(0);
}
上一篇:15 结构型模式-外观模式
下一篇:分享个自己写的小程序解包工具
相关推荐
小猪咪piggy
8 分钟前
【leetcode100】回溯
数据结构·算法
一眼万里*e
13 分钟前
MavLink消息协议
c++
m0_60388871
17 分钟前
More Images, More Problems A Controlled Analysis of VLM Failure Modes
人工智能·算法·机器学习·ai·论文速览
恶魔泡泡糖
24 分钟前
51单片机矩阵按键
c语言·算法·矩阵·51单片机
叶子202422
25 分钟前
电力系统分析---对称分量法
算法
千金裘换酒
1 小时前
LeetCode 二叉树的最大深度 递归+层序遍历
算法·leetcode·职场和发展
爱敲代码的TOM
1 小时前
详解一致性哈希算法
算法·哈希算法
lzllzz23
1 小时前
递归的理解
算法·深度优先·图论
星火开发设计
1 小时前
C++ stack 全面解析与实战指南
java·数据结构·c++·学习·rpc·栈·知识
AI视觉网奇
1 小时前
ue 设置骨骼网格体
c++·ue5
热门推荐
01GitHub 镜像站点02网站改了域名,如何查找?03Labelme从安装到标注:零基础完整指南04Linux下V2Ray安装配置指南05安娜的档案(Anna’s Archive) 镜像网站/国内最新可访问入口(持续更新)06AI 规范驱动开发“三剑客”深度对比:Spec-Kit、Kiro 与 OpenSpec 实战指南07【踩坑笔记】50系显卡适配的 PyTorch 安装082025-04-03 Latex学习1——本地配置Latex + VScode环境09Netlify 的深度解析及使用指南10电脑设置定时关机有多种方法(含python代码)