2021蓝桥杯模拟赛-受伤的皇后

2023-11-15

题目

题目链接

题解

DFS。


八皇后问题改编而已,加入判断左上三格内和右上三格内是否存在皇后。

代码

#include<bits/stdc++.h>
using namespace std;

int n, ans;
int col[15], vis[15][15];

bool check (int x, int y) {
	int tx = x, ty = y, cnt = 0;
	while (tx >= 0 && ty >= 0 && cnt < 3) { // 左上
		if (vis[tx][ty]) return false;
		tx --, ty --, cnt ++;
	}
	tx = x, ty = y, cnt = 0;
	while (tx >= 0 && ty < n && cnt < 3) { // 右上
		if (vis[tx][ty]) return false;
		tx --, ty ++, cnt ++;
	}
	return true;
}

void dfs (int x) { // x表示第x行
	if (x == n) {
		ans ++;
		return ;
	}
	for (int i = 0;i < n;i ++) // 遍历每一列
		if (!col[i] && check (x, i)) { // 如果这一列没被占,且左上三个之内、右上三个之内均不存在皇后
			col[i] = 1;
			vis[x][i] = 1;
			dfs (x + 1);
			vis[x][i] = 0;			
			col[i] = 0;
		}
}

int main()
{
	cin >> n;
	
	dfs (0);
	
	cout << ans << endl;

	return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2021蓝桥杯模拟赛-受伤的皇后 的相关文章

  • 使用内部构造函数实例化类

    我有一个类 其构造函数被定义为内部 这意味着我无法实例化它 虽然这可能有道理 但出于调试和研究目的 我仍然愿意做一次 是否可以通过反射来做到这一点 我知道我可以访问私有 内部成员 但是我可以调用内部构造函数吗 或者 由于构造函数没有做任何重
  • 警告:从指针目标类型中丢弃“const”限定符

    没有const char s意味着 s 是一个指向常量 char 的指针 那么为什么它给我这个警告 我并不是想改变价值观 在第一个函数中警告是return discards const qualifiers from pointer tar
  • 为什么 LinkedList 通常比 List 慢?

    我开始在我的一些 C 算法中使用一些 LinkedList 而不是列表 希望能够加快速度 然而 我注意到他们只是感觉更慢 像任何优秀的开发人员一样 我认为我应该尽职调查并验证我的感受 所以我决定对一些简单的循环进行基准测试 我认为用一些随机
  • 将语句插入 SQL Server 数据库

    最近几天我试图找到这个错误 但没有成功 我正在尝试在数据库中插入一个新行 一切都很顺利 没有错误 也没有程序崩溃 My INSERT声明如下 INSERT INTO Polozaj Znesek Uporabnik Cas Kupec Po
  • 将占位符文本添加到文本框

    我正在寻找一种将占位符文本添加到文本框的方法 就像在 html5 中使用文本框一样 IE 如果文本框没有文本 则会添加文本Enter some text here 当用户单击它时 占位符文本消失并允许用户输入自己的文本 如果文本框失去焦点并
  • CMake 警告:无法为目标生成安全的链接器搜索路径

    在为 pcl 项目运行 CMake 时 我收到一条警告消息 Configuring done CMake Warning at CMakeLists txt 12 add executable Cannot generate a safe
  • IClaimsTransformation 未触发

    我尝试过实施一个IClaimsTransformation我在 ASP NET CORE 3 1 Web 应用程序中找到的类 public class ClaimsTransformer IClaimsTransformation publ
  • ASP MVC 5 - 403 customError 不起作用

    我正在尝试为我的应用程序创建自定义错误页面 它在大部分情况下都有效 但不适用于403 errors 我的网络配置
  • 从 ef core 的子集合中删除一些项目

    我有一个父表和子表 其中父表与子表具有一对多关系 我想删除一些子项 并且希望父项的子集合反映该更改 如果我使用删除选定的子项RemoveRange 那么子集合不会更新 如果我使用Remove从子集合中删除子集合然后 显然 它不如使用效率高R
  • IBM Watson 对话服务错误:无法从“方法组”转换为“conversation.onMessage”

    我正在尝试运行 IBM Watson会话服务团结和下面是代码片段 https github com watson developer cloud unity sdk conversation private Conversation m C
  • 打破条件变量死锁

    我遇到这样的情况 线程 1 正在等待条件变量 A 该变量应该由线程 2 唤醒 现在线程 2 正在等待条件变量 B 该变量应该由线程 1 唤醒 在我使用的场景中条件变量 我无法避免这样的死锁情况 我检测到循环 死锁 并终止死锁参与者的线程之一
  • 为什么我的 ITexthandler 不工作?我正在尝试将 XML 解析为 ITextSharp 文档

    我正在使用 Visual Developer 2010 MVC 3 c 我正在尝试将 XML 解析为 iTextSharp 文档 如下所示 ITextHandler textHandler new ITextHandler doc text
  • 函数模板重载解析期间的 MSVC 与 Clang/GCC 错误,其中一个函数模板包含参数包

    当我使用参数包时 我注意到这样一种情况 如下所示 在 gcc 和 clang 中编译得很好 但在 msvc 中却不行 template
  • 如果数组为空,LINQ 返回 null

    public class Stuff public int x other stuff 我有一个IEnumerable
  • C# - 命名空间内的类型声明

    在命名空间内而不是在类中声明类型的可能用途是什么 For ex namespace Test public delegate void Ispossible 这是有效的并且不会产生任何编译错误 但我无法想象为什么我们会以这种方式声明它而不是
  • printf 参数不足

    我的问题是关于缺少参数的 printf 之后的行为 printf s blah blah d int integer was given as argument and not int written 我已经知道 如果格式参数不足 则行为是
  • 如何在Linux上构建GLFW3项目?

    我已经使用 cmake 和 make 编译了 glfw3 和包含的示例 没有出现任何问题 开始编写我的第一个项目 作为 opengl 和 glfw 的新手 并且对 C 和 CMake 没有经验 我正在努力理解示例构建文件 甚至要链接哪些库和
  • 为什么从绑定返回的对象会忽略额外的参数?

    假设我有一个带有两个参数的函数 void f int x int y 我想绑定其中之一 我可以用std bind如下 auto partiallyBoundF std bind f 10 1 partiallyBoundF仅需要一个参数 但
  • Crypto++ 和压缩 EC 密钥

    如何在 Crypto 中生成压缩的 ECDSA 密钥 AutoSeededRandomPool prng ECDSA
  • XmlDocument Save 使文件保持打开状态

    我有一个简单的 C 函数 可以创建一个基本的 XML 文件并保存 private void CreateXMlFile string Filename string Name string Company XmlDocument doc n

随机推荐

  • log4net配置(web中使用log4net,把web.config放在单独的文件中)

    成功例子一 vs2003建立的asp net项目 log4net文件放在web config文件中 1 添加log4net dll的引用 可以用源码自己生成 无所谓了 下载dll都行 2 web config中添加 注意放对位置 在
  • Redis学习:redis.conf详解

    Redis conf配置文件是关于Redis重要属性的 配置好redis conf 了解里面的属性很重要 下面是我从github上直接拷贝的代码 Redis configuration file example Note that in o
  • 设计模式-桥接模式

    文章目录 前言 桥接模式的核心概念 为什么要使用桥接模式 桥接模式的示例代码 使用场景 桥接模式优缺点 前言 当我们谈到设计模式时 桥接模式 Bridge Pattern 是一种结构型设计模式 用于将抽象部分与其实现部分分离开来 以便它们可
  • 数据驱动的数字化转型:从流程驱动到数据驱动

    数字化时代已经到来 1996年的时候 Being Digital 的作者Negroponte就提出数字化生活的概念 而20年以后的今天 我们已经进入了数字化的生活 移动互联网 物联网 手机 各种社交媒体 电子支付等各种数字化技术把我们的生活
  • top查询机器情况

    top命令 是Linux下常用的性能 分析工具 能够实时显示系统 中各个进程的资源占用状况 类似于Windows的任务管理 器 下面详细介绍它的使用方法 top 02 53 32 up 16 days 6 34 17 users load
  • 虚拟机Ubuntu与主机复制文字

    执行以下几条命令即可 sudo apt get install open vm tools sudo apt get install open vm tools desktop 重启
  • 【翻译】白人男性在改善性别多样性方面的作用是什么?

    我们都知道 或者说现在应该知道 多元化的团队和组织更成功 更有创造力 有更好的留任率 并能带来更健康的工作场所文化 强调这些观点的数据是很多的 然而 技术团队在这方面往往是落后的 艾米丽 张在她的书 Brotopia 中认为 在一个如此有力
  • vhdl语言入门_初学Chisel语言,看这篇就够了:最方便简洁的入门资料整理

    声明 本文是我一个很优秀的学生总结的 放出来供广大chisel语言爱好者参考 Chisel Constructing Hardware In a Scala Embedded Language 是UC Berkeley开发的一种开源硬件构造
  • Python代码实现图像语义分割

    Python代码实现图像语义分割的步骤详解 原文链接 https www jb51 net article 187249 htm 在网上看到了这篇 代码简洁 身为还没完全入门的小白 每跑通一个程序真的都好开心 1 环境部署 在进行项目设计前
  • Gitee教程(超详细、简单)

    目录 前提 Gitee上传代码到远程仓库 1 打开Git Bash Here 2 配置用户和邮箱 3 初始化仓库 4 添加项目文件至本地仓库 5 将待提交区域的修改提交到本地 Git 仓库 并添加提交注释 必不可少 6 将本地仓库与远程仓库
  • blob字段怎么查看是乱码_MySQL乱码的原因和设置UTF8数据格式

    MySQL使用时 有一件很痛苦的事情肯定是结果乱码 将编码格式都设置为UTF8可以解决这个问题 我们今天来说下为什么要这么设置 以及怎么设置 MySQL字符格式 字符集 在编程语言中 我们为了防止中文乱码 会使用unicode对中文字符做处
  • 因果模型四:实现因果模型的python工具——pycasual

    因果模型四 实现因果模型的python工具 pycasual 关于因果模型 我们在前三篇文章中简单介绍了因果模型的研究发展历程 一个因果模型的数学化求解过程和因果模型在医学和商业领域的两个应用实例 今天我们就来简单介绍一个实现因果模型的py
  • 对UDP编程的初步认识

    UDP与TCP的区别 1 1 TCP协议 传输控制协议 使用TCP协议前 须先建立TCP连接 形成传输数据通道 传输前 采用 三次握手 方式 TCP协议进行通信的两个应用进程 客户端 服务端 在连接中进行大数据量的传输 传输完毕 需释放已建
  • 淘宝开放平台 ISV入驻开发流程

    原本的千牛插件整合到淘宝开放平台中 原本的千牛入驻教程时间为17年的 已经不适用了 最新的新手入驻指南是的是2020年6月的 按照流程登录账号 确定需要创建应用的类目 有的类目比如订单管理都是定向开发者无法申请的 我申请的是服务类目的 根据
  • 【objectARX学习计划】

    按照 ObjectARX开发实例教程 pdf 学习计划 序号 模块 开发功能 是否重点 难度 学时 天 时间计划 完成情况 备注 1 创建和编辑基本图形对象 创建直线 是 容易 1 2 创建圆 是 容易 3 创建圆弧 是 容易 4 创建多段
  • 网页伸缩式导航栏(附源码)

    网页伸缩式导航栏 效果图如下 文件目录 html代码 index html
  • Kubernetes之(十九)资源指标和集群监控

    目录 Kubernetes之 十九 资源指标和集群监控 资源指标和资源监控 metrics server 部署metrics server Prometheus 概述 部署prometheus Grafana数据展示 Kubernetes之
  • .net Core竟然支持xamrain

    终于明白 net Core的意义 以前在微软推出 net Core时 我有点不明白 为啥微软要弄个阉割版的net平台 现在 刚接触 xamarin跨平台开发 发现 net Core竟然轻松支持xamrain开发安卓程序 微软微软 真是用心良
  • Linux系统常用命令

    Linux系统常用命令 一 常用快捷键 ctrl shift table 表示临时变大 ctrl table 表示临时变小 ctrl t 打开多个 一个 终端 永久生效 终端上的 edit 属性设置 ctrl l clear 清屏 ctrl
  • 2021蓝桥杯模拟赛-受伤的皇后

    题目 题目链接 题解 DFS 八皇后问题改编而已 加入判断左上三格内和右上三格内是否存在皇后 代码 include