博物馆守卫问题(世界名画展览馆)

算法分析课设(十一)博物馆守卫问题、世界名画陈列馆问题(分支界限法) 免责声明 不想打字了。。 题目 在某博物馆中摆放了非常重要的文物,为了节省人力,该博物馆专门购买了警卫机器人来看管这些文物。该博物馆的房间排列整齐,房间的大小相同。每个警卫机器人能够巡查的范围除本身所在房间外,还包括其起始安放的房间的上下左右四个房间。为了减少摆放的机器人的数量,请你设计一种最佳的摆放方案,使得摆放的机器人数量最少。 输入: 输入一行,有两个整数m,n,分别表示该博物馆每行的房间数和每列的房间数。博物馆总房间数即为m*n。 输出: 输出的第一行表示需要的机器人的数量,其后 阅读详情

世界名画展览馆(博物馆守卫问题)

在某博物馆中摆放了非常重要的文物,为了节省人力,该博物馆专门购买了警卫机器人来看管这些文物。该博物馆的房间排列整齐,房间的大小相同。每个警卫机器人能够巡查的范围除本身所在房间外,还包括其起始安放的房间的上下左右四个房间。为了减少摆放的机器人的数量,请你设计一种最佳的摆放方案,使得摆放的机器人数量最少。
输入:
输入一行,有两个整数m,n,分别表示该博物馆每行的房间数和每列的房间数。博物馆总房间数即为m*n。
输出:
输出的第一行表示需要的机器人的数量,其后m行,每行有n个元素,每个元素的值为0或1,分别表示对应的房间是否摆放机器人。0表示不摆放,1表示需要摆放。

样例输入:
4 4
样例输出:
4
0 0 1 0
1 0 0 0
0 0 0 1
0 1 0 0 

对于此题有不少的解法,以下代码属于时间复杂度较高的一种做法,使用的优先队列,但如果输入5x5的话可能跑不起来,仅用于自己学习。
未经作者授权,禁止转载或作他用。


#include"algorithm.h"
#include<queue>

#define max 100

using namespace std;

int col = 0;
int row = 0;
int board[max][max];
// 记录最优的放置个数: n*m/3 - 1
int best;
int ans_;	// 记录个数
int ans2[max][max];

struct node {
   
   
	// 棋牌的状态,
	// board[i][j]=0 表示没有任何处理,
	// = 1 放置守卫
	// = 2 被监视
	int board[max][max];
	int x, y;	// 当前守卫放置的位置
	int sum;	// 守卫的总个数

	node(int board[max][max], int x, int y, int sum) {
   
   
		for (int i = 0; i < row; i++) {
   
   
			for (int j = 0; j < col
西班牙出差见闻之三(普拉多博物馆) 普拉多博物馆,建于18世纪,位于西班牙马德里,普拉多博物馆(Prado)被认为是世界上最伟大的博物馆之一,亦是收藏西班牙绘画作品最全面、最权威的美术馆。 这里将简单介绍博物馆里面的主要名画,因为博物馆禁止拍照,所以图片都是从网上搜索的,介绍也是汇集各种关于这些名画的介绍而成。 镇馆之宝:《宫娥》 作者:迭戈·委拉斯开兹 《宫娥》这幅作品的中心人物是西班牙国王菲利普四世的小女儿玛格利特公主,她处于画面的中心位置,摆出端仪的姿态。左边的一个宫女跪下来,向她奉上一些茶点,但小公主全... 阅读详情

相关推荐

算法分析与设计之世界名画陈列馆问题(回溯法)java源代码和实验报告

算法分析与设计之世界名画陈列馆问题(回溯法)java源代码和实验报告 算法作为计算机专业学生的必修课,同时也是软件开发过程中必备的编程思想,对学习研究计算机专业意义重大;正因为这门课程难,所以除了相关方面的书籍,网络资源少的可怜,尤其是java代码简直如大海捞针。因此,做完这次课程设计,我决定把这些资源传到广大学生钟爱的优快云上供大家分享学习,希望能真正帮到大家!

算法设计与实践 卫兵位置,电路板连线数

5.8 将n块电路板以最佳排列方式插入带有n个插槽的机箱中。n块电路板的不同排列方式对应于不同的电路板插入方案。设B={1, 2, …, n}是n块电路板的集合,L={N1, N2, …, Nm}是连接这n块电路板中若干电路板的m个连接块。Ni是B的一个子集,且Ni中的电路板用同一条导线连接在一起。设x表示n块电路板的一个排列,即在机箱的第i个插槽中插入的电路板编号是x[i]。x所确定的电路板排列Density (x)密度定义为跨越相邻电路板插槽的最大连线数。 卫兵布置问题:一个博物馆由排成m*n个矩形阵列的陈列室组成,需要在陈列室中设立哨位,每个哨位上除的哨兵除了可以监视自己所在陈列室外,还可以监视他上、下、左、四个陈列室,试给出一个最佳哨位安排方法,使得所有陈列室都在监视之下,但使用的哨兵最少。

陈列馆问题

计算机算法设计与分析书本的陈列馆问题 习题5_17

卫兵布置问题_卫兵布置问题_算法程序设计——卫兵布置问题_

一个算法程序作业,利用C++实现卫兵布置问题

告别手动画图!用Cadence SKILL写一个参数化电感PCell(附完整代码)

本文详细介绍了如何使用Cadence SKILL语言开发参数化电感PCell,实现电感版图的自动化生成。通过动态调整线宽、圈数等几何参数,自动创建端口并进行工艺规则校验,大幅提升高频电路设计效率。附完整代码示例,帮助工程师快速掌握PCell开发技巧。

weixin_30684743的博客 369

Linux USB设备命名规则

有一个USB设备,接到了Linux系统的终端的某个插口上,那么怎么找到这个设备对应设备路径呢?这个USB设备虚拟了多个功能(三个串口和一个网卡), 如何找到对应操作路径呢?

weixin_43132521的博客 1699

AI赋能传染病建模:从数据到动力学模型的本地实践指南

这次我们来看一个将 AI 与传染病动力学建模结合的前沿方向。想象一下,你手头有一份流感爆发的病例数据,传统的建模方法可能需要复杂的微分方程和大量的手动调参,而 AI 模型能否直接从数据中“学习”出传播规律,甚至自动跑通整个建模流程?这正是当前研究的热点。根据《Nature》的最新综述,人工智能正在重塑传染病流行病学建模,从参数推断、趋势预测到多源数据融合,AI 技术为解决传统建模中的计算瓶颈和数据难题提供了全新路径。 对于开发者、数据科学家或公共卫生领域的研究者而言,最关心的是:这套方法能不能在本地跑起来?

weixin_29051811的博客 298

XCKU060光纤卡学习资料保存:基于kintex UltraScale XCKU060的双路QSFP+光纤PCIe 卡

基于kintex UltraScale XCKU060的双路QSFP+光纤PCIe 卡 一、板卡概述 本板卡系我司自主研发,基于XilinxUltraScaleKintex系列FPGAXCKU060-FFVA1156-2-I架构,支持PCIEGen3x8模式的高速信号处理板卡,搭配两路40GQSFP+接口,两组64-bitDDR4,每组容量8Gbyte,可稳定运行在2400MT/s。板卡具有自控上电顺序,BP...

3075

手把手教你学simulink(41.4)--逆变器电场景示例:基于Simulink的主从控制的多逆变器协同控制(Multi-Inverter Coordinated Control)

需求分析在现代电力系统中,分布式发电和储能系统的广泛应用使得多个逆变器并联运行成为常见的应用场景。为了确保多个逆变器之间的协同工作,实现系统的稳定性和高效性,通常采用主从控制(Master-Slave Control)策略。主从控制通过一个主控制器(Master)来协调多个从控制器(Slave),确保所有逆变器的输出电压、频率和功率分配符合预期目标。本项目将基于Simulink平台,开发一个多逆变器协同控制系统,采用主从控制策略,实现对多个逆变器的精确控制和优化。

MHD0815的博客 307

扰动观察法MPPT控制器simulink仿真

最大功率点跟踪(MPPT)控制器对于光伏(PV)系统至关重要,因为它可以确保系统在所有操作条件下都能从光伏阵列中提取最大功率。扰动观察法(P&O)是一种广泛使用的MPPT算法,因为它简单且易于实现。本文介绍了P&O MPPT控制器的Simulink仿真,并分析了其性能。

qq_59747472的博客 318

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之EcuM模块配置详解(上)

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之EcuM模块配置详解(上)

weixin_42412049的博客 1016

基于C++和Qt开发IEC104规约主站调试软件(第二章)

本章节主要讲解iec104主站软件界面设计和从站的连接功能以及部分功能代码的展示。

半青年的博客 861

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

上一篇: 木材切割问题
下一篇: numpy 的基本使用1
monkeyhlj
博客等级 码龄9年 1万+粉丝 184原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值