![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
文章平均质量分 79
huolongshenghu
这个作者很懒,什么都没留下…
展开
-
hdu 3498 whosyourdaddy (重复覆盖,DLX+迭代加深A*)
题意:有一个英雄,他有一个技能,可以使一个点和与他相邻的点受到伤害,问最少攻击几个点可以使所有点至少被伤害一次。 思路:DLX。很裸。设行为每一个点,列为攻击点,在这里行元素与列元素都为n。然后DLX+迭代加深的启发式搜索就可以了,而启发式函数的含义为在当前状态下,在最优情况中,需要攻击几个点来消灭所有点。设计为选取一列控制,这时需要一行,行数加1。并且将与它连接的所有行包含的列都控制,这个只有原创 2013-10-26 19:32:03 · 676 阅读 · 0 评论 -
poj 3074 Sudoku (精确覆盖,DLX,搜索)
题意:一个9*9的数独,实现给你一些放好的数,且保证答案只有一种,让你输出答案。 思路:这题可以采用精确覆盖的DLX做法。首先对于数独而言,每个格子有9种情况,且有9*9 个格子,所以可以让行等于9*9*9。然后再看数独的限制条件,每个数字在每一行,每一列,每一个3*3的区域中只能出现一次。因此根据精确覆盖的特性,每一个元素只能被覆盖一次,可以设列为9行每行个,9列每行9个,9个小区域每行9个,原创 2013-10-26 19:44:45 · 773 阅读 · 0 评论 -
hdu 2295 Radar(重复覆盖,二分+DLX)
题意:有n个城市,m个工作站,工作站的覆盖区域呈圆状,且有相同的半径,最多只能使用m个工作站,问可以覆盖掉所有的城市的工作站半径最小为多少。 思路:二分加DLX。采用二分半径的方法,对于每一个半径,构造一个十字链,列为n个城市,行为m个工作站,对于每一行来讲为当前半径下,工作站可以覆盖掉的城市。然后进行A*即可。 tirick:1)一个是对于选取最小行时,设置的最大值比较小。WA。 2)As原创 2013-10-27 14:10:07 · 786 阅读 · 1 评论 -
hdu 4735 Little Wish~ lyrical step~ (2013成都网络赛H题)(重复覆盖)
题意:有一个棵树,上面有n个结点。每个节点有住着一个孩子,男生或者女生,如果女生在一个D的范围内有男生则说明被保护,问你最少交换几个孩子的位置,使得所有女生都受保护,如果无法达成,输出-1。 思路:这道题目可以转化为重复覆盖的模型,男生结点为1,女生结点为0,则行为这个结点如果为1的话,可以那几个结点的人,包括自己,列为n个人,则可以使用DLX来解决。因为只有50个点,所以树上最短距可以用flo原创 2013-10-28 18:34:38 · 1541 阅读 · 0 评论