摘要: 题目:http://poj.org/problem?id=4007思路: (lyd学长的思路) IDA*算法,首先迭代加深限制搜索深度。 可以发现如果当前矩阵中除了左上角的连通块之外,共有M种颜色,那么还需要的步数不小于M。如果当前搜索深度+估价函数的值>深度限制,可以剪枝。 如果... 阅读全文
posted @ 2016-09-08 23:15 SiriusRen 阅读(164) 评论(0) 推荐(0)
摘要: 剪枝: 1.从后向前枚举 2.迭代加深 然后就0msAC了//By SiriusRen#include using namespace std;int n,T,s[105];bool dfs(int t){ if(s[t]==n)return 1; if(t>=T)re... 阅读全文
posted @ 2016-09-08 17:51 SiriusRen 阅读(148) 评论(0) 推荐(0)
摘要: 思路: 1. 这 题 不卡常过不去啊…… (先加一个random_shuffle) 首先 我们可以折半 搜这一半可以到达的重量 sort一遍然后搜另一半 对于路程中每一个解 我们可以二分前一半中加这个解最接近w的值,更新ans剪枝: 对于第一次搜索 显然的剪枝:和不能大... 阅读全文
posted @ 2016-09-08 17:23 SiriusRen 阅读(175) 评论(0) 推荐(0)