搜索
文章平均质量分 78
Phoenix_Wright
剥水果型ACM选手
展开
-
HDU-4101
题意:给出一个n*m的图,在这个图中有宝藏,以-1标记出来。0为路径,1-100为HP为该数字的石头。Ali和Baba轮流行动,Ail为先手。每次可以选择将一个外围(有路径能从外围直达)的石头的HP减1,当石头的HP减为零时,该点变为路径。当谁能先碰到宝藏(有路径能从外围直达)谁就获胜。思路:首先想到的是先找出带宝藏的连通块,然后将所有的石头的值加起来,如果该石头挨着连通块就加原创 2016-07-28 09:03:24 · 314 阅读 · 0 评论 -
HDU-1067
求最短路的问题还是用广度搜索,但问题在于判重不好办,不判重又会暴内存和超时,所以参考了一下别人写的哈希表进行判重。将4*8的矩阵内的数字按照各自的权值相乘之后加起来对一个素数求模即可得到该状态所对应哈希表的下标。如果有重复就乘10再模一次。#include #include #include using namespace std;struct node{ int原创 2016-08-02 21:49:15 · 451 阅读 · 0 评论 -
HDU-1685
思路:注意到题目中超过四次就不用再往下算的要求,说明搜索步数非常少,比较适合用迭代加深的算法。但是暴搜多半会超时,所以问题在于如何剪枝。举个例子:当1 4 5 2 3 6转换成1 2 3 4 5 6时有三个地方从无序变成了有序:1 4->1 2,5 2->3 4,3 6->5 6,这是一次转换后能得到的最好情况,可以依照这个来剪枝。对于每个转换后数列求出其有多少无序的地方,将改值除以三后和原创 2016-08-02 21:45:25 · 326 阅读 · 0 评论 -
HDU-5433
思路:BFS+优先队列,用一个50*50*50的double数组判重。注意!!!题目里的x和y是反着的,也就是说,x对应n,y对应m。例: n = 3,m = 6 时地图为:**?***************“?”为(x=1,y=3)浪费了一下午的时间。。。#include #include #include using namespac原创 2016-07-29 16:37:29 · 272 阅读 · 0 评论 -
HDU-4474
题意:给出一个1到10000的整数n,然后再给出一些不能用的数字(0到9),求在该限制下能够整除n的最小数字,如果没有就输出-1。思路:这题的基本思想还是对数字的每一位进行BFS,但是数字的位数最多能有10000位,暴力搜索肯定会超时,这里就需要剪枝。方法就是开一个大小为10000的数组对BFS判重,BFS的队列中保存每次对n取模的余数,这个余数作为数组的下标,一旦出现相同的余数就可以原创 2016-07-19 10:09:26 · 385 阅读 · 0 评论 -
HDU-1429
一个BFS加状态压缩的题目。原创 2016-07-18 12:30:25 · 348 阅读 · 0 评论 -
HDU-1885
和HDU-1429差不多的题目,都是BFS加状态压缩,这里就直接贴代码了。原创 2016-07-18 13:29:47 · 258 阅读 · 0 评论 -
HDU-2128
这题写的比较暴力,因为地图大小只有8*8,所以在队列的节点里保存了两张地图,一张用来保存地图的情况,另一张保存在该节点时手上炸弹数量的最大值。如果走到该节点时手上的炸弹数量小于或等于最大值则不再往下走,注意初始化时最大值全部设为-1。#include #include #include using namespace std;struct node{ int x,y,t,b原创 2016-07-28 10:35:47 · 319 阅读 · 0 评论 -
HDU-3533
题意:有一个n+1*m+1大小的图,在这个图上有一些炮台,这些炮台会每隔一段时间就射出一发子弹,不同的炮台射出的子弹速度也不一样,人从(0,0)出发到(n,m),如果能量耗尽或被子弹射到就算结束,求到达目标点的最短时间。要点:1、只有当人和子弹同时到达同一点时,人才算被射中,否则即使人穿过子弹也没事。2、子弹打到炮台或飞出去会消失。3、射击间隔为1的炮台在人的每一次行动都会射出原创 2016-07-28 09:32:30 · 713 阅读 · 0 评论 -
HDU-2437
题意:给出一个带有n个节点和m条单向路径的图,保证图里没有回环,从s点出发,找到一条路径的终点的属性为‘P’,并且路径的长度要能够整除k。注意:路径要找最短的,如果有不止一条最短路径,那就选择终点编号最小的。思路:用BFS和DFS都可以做,但剪枝的方法是一样的,用一个1000*1000的数组来保存当在节点i时已走距离j模上k的最小值,即min[i][j%k],当已走距离大于min[原创 2016-08-02 22:03:59 · 268 阅读 · 0 评论