Loading

随笔分类 -  ACM——搜索——A*算法

摘要:"题目链接" 题意 中文题意 思路 做这题的前置技能学习 1. "康托展开" 这个东西我认为就是在排列组合问题上的Hash算法,可以压缩空间。 2. A 搜索。 这里我使用了像k短路一样的做法,从最终状态倒回去预处理一遍距离,但是跑了0.8s,可能是预处理花费的时间太多了。有些人用 "曼哈顿距离估价 阅读全文
posted @ 2017-09-25 09:46 Shadowdsp 阅读(427) 评论(0) 推荐(0)
摘要:"题目链接" 题意 中文题意。 思路 首先找到空白的格子,因为空白的格子可以和其他的骑士换。从空白的点开始搜索,每次和其他点交换。因为最多只有十五步,可以做16次搜索,搜索的时候,记录走过的步数和至少剩余的步数(还剩下多少个骑士不在原本的位置),这样剪枝。当check到所有的骑士都在合法位置的时候, 阅读全文
posted @ 2017-09-23 22:39 Shadowdsp 阅读(354) 评论(0) 推荐(0)
摘要:"题目链接" 题意 给出n个点m条边的无向图,求次短路。 思路 和 "POJ 2449" 类似,只不过大小要开成long long。 C++ include using namespace std; typedef long long LL; const int N = 100011; const 阅读全文
posted @ 2017-09-23 00:51 Shadowdsp 阅读(181) 评论(0) 推荐(0)
摘要:"题目链接" 题意 给出n个点m条有向边,源点s,汇点t,k。问s到t的第k短路的路径长度是多少,不存在输出 1. 思路 A\ 算法是启发式搜索,通过一个估价函数 f(p) = g(p) + h(p) ,其中源点到p的距离是g(p),从p到汇点的距离是h(p),从源点经过p点到达汇点的长度f(p), 阅读全文
posted @ 2017-09-22 18:33 Shadowdsp 阅读(261) 评论(0) 推荐(0)