棋盘覆盖问题c++源码(分治法)
需积分: 0 165 浏览量
更新于2023-06-27
1
收藏 4KB TXT 举报
对于大小为NxN的棋盘,使用L形积木填充。具体地,输入N后,程序使用分治法不断划分,划分到最小单位时,再进行填充。
1、实验环境
vs2019
2、实验题目
棋盘覆盖
3、问题分析、数学建模、算法设计
(一)不断将棋盘围绕中心划分为等分的四份,每次等分前根据特殊块的位置放置一个积木,直到棋盘的长度足够小(n=2)时,不再划分,进行填充。
(二)①若n=2,结束划分 ②若n>2,继续划分
(三)不使用全局变量,将信息作为参数进行传递。主要的参数有当前棋盘起点坐标(ax,ay),特殊点坐标(bx,by),棋盘长度n,二维棋盘board,以及当前以及使用的符号数cnt,
设计函数trio,将n=2作为递归出口,若n不等于2,则依据特殊点位置放置一个积木,再将棋盘四等分,继续递归。
·复杂度分析:
①时间复杂度:O(n*n);
②空间复杂度:O(n*n);
rebegin_2023
- 粉丝: 38
- 资源: 11
最新资源
- 基于javaweb的小说网站系统毕业论文.doc
- 这款创意新年贺卡设计适合送给亲友,包含多种风格,用户可以根据需要进行修改和打印 新春大屏祝福的效果 这个示例使用了HTML和CSS来创建一个全屏的祝福页面,您可以根据需要进行修改和扩展
- 基于java的酒店管理系统.doc
- 截图,代码 ,生成库文件等等 ppp
- 基于事件的网络舆情分析系统源码+项目说明(高分项目)
- 基于web的企业人事信息管理论文.doc
- MFC多工具栏如何保存状态(续)
- Python基于事件的网络舆情分析系统源码+项目说明(高分项目)
- 基于SSH网上体育用品销售系统开发与设计毕业设计论文.doc
- 基于JAVA的文章发布系统的设计与实现论文.doc
- 【vue框架开发】html中实现vue响应式表单组件
- 基于ssh校园门户网站毕业论文.doc
- 线性调频脉冲回波信号的仿真matlab
- 高校社团管理系统基于Java技术的设计与实现
- JavaScript常见函数
- 酒装箱输送线 sw18全套技术开发资料100%好用.zip