
搜索
落春只在无意间
不能打败我的只会让我更强大
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法之------搜索篇
搜索 前言 深度优先搜素 如何搜索 迭代加深 加成序列 导弹防御系统 BFS 变形 双端队列BFS 优先队列BFS 双向BFS 噩梦 字串变换原创 2022-01-05 10:54:34 · 636 阅读 · 0 评论 -
将优化问题转化为决策问题
将优化问题转化为决策问题 前言 加拿大旅行 退选课程原创 2021-10-17 18:14:20 · 425 阅读 · 0 评论 -
组合搜索问题
组合搜索 患有严重过敏症的朋友原创 2021-10-17 17:46:53 · 180 阅读 · 0 评论 -
时钟同步问题
问题描述 以4×4格子形状摆放16个时钟。所有时钟的时针都指向12点、3点、6点或者9点。现在要把所有时钟的时针指向12点。修正时钟时间的唯一方式是,通过控制10个开关,且每个开关连接到少则3个、多则5个时钟上。每按1次开关,与之连接的时钟就会顺时针转动3个小时。 开关与连接的时钟有以下对应的关系。 输入 第一行输入测试用例的个数C(C≤30)。各测试用例以整数形式输入16个时钟当前指向的时间,其数值为12、3、6、9之一。 输出 每个测试用例在第1行显示出1个整数。这个整数表示,为了使所有时钟指向12点而原创 2021-10-10 10:56:44 · 301 阅读 · 0 评论 -
旅行商问题搜索求解
问题描述 某售货员要到若干城市去推销商品,已知各城市之间的路程(旅费),他要选定一条从驻地出发,经过每个城市一遍,最后回到驻地的路线,使总的路程(总旅费)最小。 输入 输入第一行为一个整数n,表示图的顶点数 输入第二行为一个整数k,表示图的边数 输入第3到k+3-1行表示边的信息,每一行三个数,分别表示顶点i,顶点j,i到j的路径长度a[i][j] 4 6 1 2 30 1 3 6 1 4 4 2 3 5 2 4 10 3 4 20 输出 输出有两行 第一行为最优值,表示旅行商的最短路径长度 第二行为最优解原创 2021-10-10 10:22:32 · 424 阅读 · 0 评论 -
盖游戏板问题
题目: 有一个H*W大小的游戏板,由黑白两种格子组成。现要用3个单位格子的L状板块把白色格子全部覆盖掉。板块可以自由旋转,但不能重叠覆盖黑色格子,或超出游戏版。 计算对给定游戏板有几种覆盖方法。 解决思路: 此题也属于计算组合个数的问题。因此,通过穷举搜索法计算出能够覆盖游戏板的所有可能的组合来解决此问题。首先要处理给定游戏板的白色格子不是3的倍数的情况,此时不可能存在答案,所以要单独处理。之后把白色格子除以3,得到盖上白色格子所需的L型板块数量M。现在可以把整个求解个过程分解为N个小的操作,每个操作视为是原创 2021-10-10 10:07:54 · 455 阅读 · 0 评论 -
郊游 ID:PICNIC
题目大意 仙女星幼儿园的快班小朋友们下周要到粟洞公园郊游。带队教师想在郊游时让两名学生组成一个小队进行活动。不过让两名不是朋友的学生组成一队会发生争执或者互不理睬。因此,必须由两名朋友关系的学生组队。 给定各学生的朋友关系详情,编写程序计算出所有可配对的不同方法。任何一个不相同的配对都将被视为一种不同的配对方法。例如,以下两种配对方法就属于不同的配对方法。 ●(泰妍,杰西卡)(珊妮,蒂芬妮)(孝渊,俞利) ●(泰妍,杰西卡)(珊妮,俞利)(孝渊,蒂芬妮) 解题思路: 为了使用递归调用,首先将整个操作过程分解原创 2021-10-10 09:28:09 · 113 阅读 · 0 评论 -
串串字连环
题目大意: 串串字连环是利用一个5x5大小的英文字母格子进行的游戏。游戏规则是,连接上下左右/对角线方向上相邻的字母,组成一个单词。 const int dx[8] ={-1,-1,-1,1,1,1,0,0}; const int dy[8] ={-1,0,1,-1,0,1,-1,1}; bool hasword(int y,int x ,condt string&word){ //初始化部分1,如果在棋盘的外部,直接返回。 if(!inRange(y,x))return fal原创 2021-10-10 09:14:26 · 295 阅读 · 0 评论 -
(DFS)求出n个数中选择m个数的所有可能
// step 已选的元素个数 //pinum 要选的元素的数量 // picked 选的元素 int n,num[N],picked[N],pinum; void pick(int step,int x){ // 这个路径选了 m个了就返回了 if(step == pinum + 1) { for(int i=1;i<step;++i) cout<< picked[i]<<" "; cout<&l原创 2021-10-09 23:14:03 · 300 阅读 · 0 评论