UVALive 2520 Holedox Moving(BFS+状态压缩)
摘要:这个题目在比赛的时候我们是没有做出来的,但是听到他们说进制哈希的时候,感觉真的是挺高端的,于是赛后开始补题,本着我的习惯在看题解之前自己再试着写一遍,我当时存储状态的方法是string + map,我用string将蛇的各个位置都存下来,用map记录这个状态有没有出现过,当时是过了题目中给的样例,我
阅读全文
posted @
2016-09-03 16:43
icode-xiaohu
阅读(205)
推荐(0)
CodeForces 682C Alyona and the Tree(广搜 + 技巧)
摘要:方法:从根节点开始广搜,如果遇到了应该删除的点,就再广搜删掉它的子树并标记,然后统计一下被标记的个数就是答案,所谓技巧就是从根节点开始搜索的时候,如果遇到了某个节点的距离<0,就让它是0,0可以消除负数效应,让后面的点重新参与正常删除操作,这个方法的正确性不难证明,可以自己画一下图。而且还有比较方便
阅读全文
posted @
2016-08-15 16:46
icode-xiaohu
阅读(237)
推荐(0)
UVALive 7299 Boggle(深搜的姿势)
摘要:一开始确实是我的锅,我把题意理解错了,以为是一个q周围没有q的时候才可以当时qu,其实是只要碰到q,他就是qu,所以我们也可以通过预处理的方式,把字典中的不满足qu连在一起的直接去掉。 后来的各种TIE我就表示不能理解了……我换了好多个姿势,改了各种各样的形式,最后改的快跟学长一模一样了,还是TLE
阅读全文
posted @
2016-08-06 13:51
icode-xiaohu
阅读(257)
推荐(0)
UVALive 2403 77377解题报告(深搜)
摘要:题意:给你一些固定的字符串,在给出数字,根据键盘的对应关系,输出所有的满足条件的字符串,输出顺序无所谓。 思路:因为题目说了,输出比较小,说明测试数据并不强,所以可以暴力回溯求出答案,将所有的给出的字符串压缩为数字,再将对应相同数字的字符串存储起来(当时忘了这里,WA了几次),然后深搜即可。 注意:
阅读全文
posted @
2016-07-31 15:29
icode-xiaohu
阅读(305)
推荐(0)
UVALive 2053 Puzzlestan(深搜+技巧)
摘要:这个题目的深搜形式,我也找出来了,dfs(i,j)表示第i个人选到了第j个物品,但是我却无限RE了,原因是我的viod型深搜太过暴力,我当时定义了一个计数器,来记录并限制递归的层数,发现它已经递归到了1500层,加上限制后,WA了……后来学习了网上的方法,使用bool型的深搜,每一次选择都去跟题目中
阅读全文
posted @
2016-07-24 17:13
icode-xiaohu
阅读(271)
推荐(0)
UVALive 2035 The Monocycle(BFS状态处理+优先队列)
摘要:这道题目真是非常坎坷啊,WA了很多次,但所有的思路都是奔着广搜去想的,一开始出现了比答案大的数据,才想到了应该是优先队列,再说加上也肯定不会错。一开始我读错了题意,以为旋转并且前行需要的时间跟其他一样,但是旋转的动作是需要额外计时的。我的第一种方法错误原因还没有找到,我在旋转以后就直接改动了位置,感
阅读全文
posted @
2016-07-19 17:03
icode-xiaohu
阅读(228)
推荐(0)
HDU 1885 Key Task(BFS + 状态压缩)
摘要:做这个题的时候我给想简单了,还以为是个基础的广搜,后来发现搜索无法完成,因为vis的标记已经不能再使用了,因为一旦标记了,同一个结点不能走两次,而题目中有的时候有些点必须要走两次,甚至多次. 我就无从下手了,赛后看了题解才知道,每个点都有16个状态,用状态压缩可以来保存每个点的钥匙状态,开一个三维的
阅读全文
posted @
2016-05-03 10:55
icode-xiaohu
阅读(248)
推荐(0)
FZU 2107 Hua Rong Dao(暴力回溯)
摘要:dfs暴力回溯,这个代码是我修改以后的,里面的go相当简洁,以前的暴力手打太麻烦,我也来点技术含量..
阅读全文
posted @
2016-04-30 16:57
icode-xiaohu
阅读(312)
推荐(0)
FZU 2030 括号问题(回溯)
摘要:两种做法,一种dp,一种dfs,因为这个数据比较小,所以dfs全排列的方式是可以接受的,但是当比较大的时候就不行了,所以dp的方式还是要掌握一下的,我这里是dfs的做法,网上有很多人写的dp,可以去看一下,尤其是当遍历到右括号的时候的处理方式需要好好想一想
阅读全文
posted @
2016-04-30 15:50
icode-xiaohu
阅读(242)
推荐(0)
FZU Problem 2028 时空门问题(DFS+优化)
摘要:一开始是MLE,后来想到了用vector,化二维为一维,做了这一步优化后,这就是很基础的一个广搜了
阅读全文
posted @
2016-04-30 15:38
icode-xiaohu
阅读(177)
推荐(0)
FZU Problem 2150 Fire Game(bfs)
摘要:这个题真要好好说一下了,比赛的时候怎么过都过不了,压点总是出错(vis应该初始化为inf,但是我初始化成了-1....),wa了n次,后来想到完全可以避免这个问题,只要入队列的时候判断一下就行了. 由于数据比较小,所以可以暴力的去解,不过先判断一下联通块可以解决一小部分问题的.
阅读全文
posted @
2016-04-30 15:34
icode-xiaohu
阅读(212)
推荐(0)
FZU 1912 Divisibility by Thirty-six(整除问题+字符串维护+贪心)
摘要:这个整除36的与整除45的完全一样,就是被4整除的有点多,但都是两位数,所以枚举后面两位就可以了.
阅读全文
posted @
2016-04-29 19:11
icode-xiaohu
阅读(267)
推荐(0)
FZU Problem 1895 整除45问题(整除问题+字符串维护+优化)
摘要:这个题有点烧脑啊,但是只要想清楚被45整除的数,肯定能被5和9整除,能被9整除的数各位加起来肯定是9的倍数,能被5整除的末尾是0或5. 然后dfs的过程稍微不太好懂,还有几个优化必须要注意.dfs的过程是选出哪些数我们不要,而且不要的数越少越好,所以删除的数在dfs的过程中应该越来越小,这一步必须有
阅读全文
posted @
2016-04-29 19:08
icode-xiaohu
阅读(321)
推荐(0)