【洛谷】P2324 [SCOI2005]骑士精神

IDA*练习题

1、IDA*=IdDfs+A*

1.1、IdDfs用于单层“无限”情况但是解层数很少,这时可以限制Dfs层数,Id为每次的层数限制

1.2、A*具有估价函数,用于Bfs快速求解

IDA*就是将估价函数用于层数限制的Dfs中,如果具有层数的Dfs仍然无法满足时间限制,那么可以考虑题目性质进行估价函数的剪枝,其实估价函数基本随缘,就是已经干了的和最小还需要干的加起来,进行贪心考虑,如果最小还不行,那这个方案就直接滚蛋,否则继续Dfs

所以这道题的估价函数就是:已经走的步数+至少还需要走的步数(当前整个图的状态与目标图的差距,不同则加1)

层数很清楚了,最多15层

AC

你可能感兴趣的:(A*,IDA*,IDDFS)