又一道迭代加深搜索,从小到大枚举上限 。 关键的剪枝部分是写出启发函数,这个比较难。。
不过每次剪切后,不正确的数字个数最多减三还是很好理解的,因为我们算不正确数字个数的方法是看当前数字+1是不是等于下一个数字 。 所以每次剪切最多只有3个数字的后继数字发生了改变。 那么 剪枝条件就显而易见了 。
代码如下:
#include
using namespace std;
const in...
分类:
编程语言 时间:
2015-08-05 10:31:49
阅读次数:
156
IDA*算法, 从小到大枚举深度上限,不过该题是有深度上限的,题目中的第一个样例表明:最多需要5个皇后就可以覆盖整个棋盘 。
利用紫书上的技巧,我们可以快速的判断任意两个棋子是不是在同一行、同一列、同一对角线 (详情见紫书P193那两个图)。
这样之后暴力搜索就可以了 。 每一层需要O(nm)的复杂度,但是实际上并不需要那么大的复杂度 。和八皇后问题类似 , 当前行之前的行已经放置了皇后,...
分类:
其他好文 时间:
2015-08-05 08:57:48
阅读次数:
194
IDA*算法,迭代加深搜索和A*算法的结合 。
迭代加深搜索适用于那些没有明显深度上限的题目,将深度从小到大枚举,直到找到最优解 ,减小了深搜的盲目性 。
A*算法需要一个乐观估价函数,在这个函数里寻找一个代价最小的点去搜索,所以时间复杂度都浪费在这个上面了 。
其实我照着紫书上巧的,感觉很容易,实际上其中的算法思想是要静下心来仔细研究的,练ACM这么久了,深深感到这个竞赛是那么的迷人,又是...
分类:
编程语言 时间:
2015-08-04 21:06:59
阅读次数:
163
一开始写了个 BFS 然后就 T 了...这道题是迭代加深搜索 + A*------------------------------------------------------------------------------#include#include#include#include#def...
分类:
其他好文 时间:
2015-07-09 12:38:55
阅读次数:
157
a[0]=1; a[1]=2;
之后每个数可以由前面的任意两个数相加得到(可以是同一个数),问得到数字N的最短序列
N最大为100,迭代加深搜索打表
#include "stdio.h"
#include "string.h"
int w;
int pri[110][15]; // 记录答案
int len[110]; // 数字N所需长度
int seq[110]; // DFS的每一...
分类:
其他好文 时间:
2015-04-28 11:45:13
阅读次数:
103
样例输入:495 499
样例输出:495/499 = 1/2+1/5+1/6+1/8+1/3992+1/14970
规则是加数少比加数多好,加数相同,小的数越大越好。
分析:回溯无限,宽度优先便利一层都跑不完,所以用迭代加深搜索(iterative deeping):从小到达枚举深度上线maxd,枚举上限还可以减枝。
IDA*算法:深度上线maxd,当前节点n的深度为g(n),乐观估价...
分类:
其他好文 时间:
2015-04-27 15:19:09
阅读次数:
118
迭代加深搜索
迭代加深搜索(Iterative Deepening Depth-First Search, IDDFS)经常用于理论上解答树深度上没有上界的问题,这类问题通常要求出满足某些条件时的解即可。比如在“埃及分数”问题中要求将一个分数a/b分解成为若干个形如1/d的加数之和,而且加数越少越好,如果加数个数相同,那么最小的分数越大越好。下面总结一下该方法的一般流程:
(1)概述:迭代加深...
分类:
其他好文 时间:
2015-04-12 09:22:44
阅读次数:
157
1.题目描述:点击打开链接
2.解题思路:本题利用迭代加深搜索解决。好久没做这个专题了,感觉这种方法有点力不从心,不会寻找估价函数是硬伤。。。只好学一学别人的代码。
本题要求棋盘中间的8个方格都要是相同的数字。紫书上说是利用状态空间搜索解决,大致模板还是八数码问题的模板。但是写了半天最后WA了,感觉这道题用那个模板写出来会很复杂。最后看别人的代码,才发现大多都是利用迭代加深搜索解决的,代码量也...
分类:
其他好文 时间:
2015-04-11 18:01:30
阅读次数:
161
1 //==================================================== 2 //迭代加深搜索求字符串最小周期; 3 //==================================================== 4 5 #include ...
分类:
其他好文 时间:
2015-03-20 20:08:32
阅读次数:
121