Problem Description The doggie found a bone in an ancient maze, which fascinated him a lot. However, when he picked it up, the maze began to shake, an ...
分类:
其他好文 时间:
2017-06-03 22:31:12
阅读次数:
175
【解题思路】 A*(上下界剪枝)。 答案上界:15。 答案下界:当前步数+当前状态剩余步数估价。 这里我们简单地设计估价函数为当前状态与目标状态不相同的棋子数-1,与0的较大值。这样保证了0≤估价≤正确步数。 复杂度o(25*C(24,12))。 【参考程序】 1 #include <bits/st ...
分类:
其他好文 时间:
2017-05-30 20:54:37
阅读次数:
130
開始对点搜索,直接写乱了。想了想对边搜索,尽管复杂度高。剪枝一下水过去了。 代码: #include<cstdio> #include<iostream> #include<cstring> #include<vector> using namespace std; struct Edge{ int ...
分类:
其他好文 时间:
2017-05-29 19:18:30
阅读次数:
147
简介 剪枝(pruning)是指通过移除决策树的某一部分以减少树的大小,被移除的部分的分类能力比较弱,从而降低最终分类器的复杂度,提高泛化能力。 从上一篇文章中,我们知道决策树是通过递归算法产生,然而这可能会出现过拟合(overfitting),也就是,一味的拟合已知的训练数据集,可能会导致分类器过 ...
分类:
其他好文 时间:
2017-05-26 13:26:26
阅读次数:
281
题目链接:Tempter of the Bone 第一次做剪枝的题目,剪枝,说实话研究的时间不短。好像没什么实质性的进展,遇到题目。绝对有会无从下手的感觉,剪枝越来越神奇了。。。。 HDU1010一道剪枝的经典题目,自己当初想用BFS过。提交了10几遍WA,后来查了是剪枝最终死心了 PS:第一次写剪 ...
分类:
其他好文 时间:
2017-05-21 09:57:09
阅读次数:
212
665E 题意: 给一个数列和一个整数k,求这个数列中异或起来大于等于k的子串数量。 分析: 其实只要维护一个维护前缀和就行了,把前缀和加到字典树里,然后递归search一下,注意需要剪枝,不然会T, if(s + (1ll << (i + 1)) - 1 < k)return 0; 这句话的意思是 ...
分类:
其他好文 时间:
2017-05-20 18:57:02
阅读次数:
161
下面是题面。 我们发现暴力很好想也很好写,做n遍SPFA,再按rank把点扫一遍就好了,复杂度大概是平方级的。 那么正解应该是在这上面的优化。 注意到最终的答案不会超过30n,但是点对有n^2个?所以说这应该是一个剪枝点。 同时发现rank<=10? 有一个非常重要的数据,点x到rank为i的点集的 ...
分类:
其他好文 时间:
2017-05-20 15:57:11
阅读次数:
284
题目链接:hdu 6031 Innumerable Ancestors 题意: 给你一棵n个节点的树,现在有m个询问,每次给你两个点集a,b。 让你从a,b点集中选两个点x,y,使得这两个点的LCA的深度最大。 题解: 标解应该是二分+LCA,不过我试了一下暴力,稍微剪了点枝,就直接过去了。 具体看 ...
分类:
其他好文 时间:
2017-05-19 20:23:04
阅读次数:
239
kuangbin专题一 A. 棋盘问题 在是棋盘的格子上放置棋子,其中要求所有棋子不同行也不同列,求摆放的方案数。 dfs,参数:行、棋子数,遍历的时候要回溯。 B. Dungeon Master 走迷宫,3D的走迷宫。 C. Catch That Cow 最短时间找到那只牛。 bfs,剪枝。 D. ...
分类:
其他好文 时间:
2017-05-19 10:04:44
阅读次数:
118
传送门:http://bailian.openjudge.cn/practice/2812/ 【题解】 垃圾题目毁我青春。 暴力枚举两个点,判断是否成立。 瞎jb判一判,剪剪枝就过了。 大概就是排序后如果当前x+dx已经大于n了就break (听说会快很多(并没有)) 我怎么这么傻逼啊:反正只有一条 ...
分类:
其他好文 时间:
2017-05-16 23:35:09
阅读次数:
206