摘要: 在算法竞赛中,我们常常需要用到设置一个常量用来代表“无穷大”。 比如对于int类型的数,有的人会采用INT_MAX,即0x7fffffff作为无穷大。但是以INT_MAX为无穷大常常面临一个问题,即加一个其他的数会溢出。 而这种情况在动态规划,或者其他一些递推的算法中常常出现,很有可能导致算法出问题 阅读全文
posted @ 2017-03-11 12:02 HuaZhang 阅读(2354) 评论(0) 推荐(0) 编辑
摘要: 题目链接:HDU-5114 题意为给一个矩形n*m,两个给定坐标的球在矩形中都以(1,1)的速度运动,碰到边界会反弹,求第一次碰撞的坐标。 思路是首先把运动分解为横向运动和纵向运动分别考虑,则变成两个追赶运动。假设\(x_2>x_1,y_2>y_1\),可以得到x坐标相同的时间为\(t_x=n - 阅读全文
posted @ 2017-03-11 10:02 HuaZhang 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 题目链接:HDU-5113 题意为给一个n*m的矩阵染色,颜色i有\( d_{i} \)种颜色。相邻块颜色不能重复。 思路:首先最值得注意的是n和m均不大于5。这种数据范围显然是要搜索。但是直接dfs会超时。 所以需要用如下性质剪枝: 任一颜色剩余数目不能超过剩余格子数的一半。 这条性质很容易理解: 阅读全文
posted @ 2017-03-06 17:28 HuaZhang 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 题目链接:HDU-5117 题意为有n盏灯,m个开关,每个开关控制着\( k_{i} \)灯。X为最后亮着的灯的个数,要求出\( E(X^{3} ) * 2^{M} mod (10^9 + 7) \)。 可以看出\( E(X^{3} ) * 2^{M} = \sum (X^{3} * (\frac{ 阅读全文
posted @ 2017-03-06 15:53 HuaZhang 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 转自Memento 一、二分图最大匹配 定义:匹配是图中一些边的集合,且集合中任意两条边都没有公共点,所有的匹配中,边数最多的就是最大匹配。 算法:用匈牙利算法可以在O(V*E)的复杂度内求出二分图的最大匹配,具体可以看byvoid神犇的blog,讲的很详细,不过想真正完全证明这个算法,得去看组合数 阅读全文
posted @ 2017-02-19 20:43 HuaZhang 阅读(3143) 评论(1) 推荐(2) 编辑
摘要: 转载自Matrix67 二分图最大匹配的König定理及其证明 如果你看不清楚第二个字母,下面有一个大号字体版本: 二分图最大匹配的König定理及其证明 本文将是这一系列里最短的一篇,因为我只打算把König定理证了,其它的废话一概没有。 以下五个问题我可能会在以后的文章里说,如果你现在很想知道的 阅读全文
posted @ 2017-02-19 17:49 HuaZhang 阅读(1250) 评论(0) 推荐(0) 编辑
摘要: 题目链接:POJ-3260 题意是一个人买东西,有n种纸币,面额为v[i],数量为c[i]。同时售货员也有这些纸币,数量为无限。要买价值为t的东西,希望给“钱用的纸币数和着钱用的纸币数的和”最少。 思路很显然是完全背包和多重背包各处理售货员和这位老哥。这个题给出所有v[i]<=120,这一点很有迷惑 阅读全文
posted @ 2017-02-11 16:55 HuaZhang 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 题目链接:HDU-1255 题目是给定平面上若干矩形,求出被这些矩形覆盖过至少两次的区域的面积. HDU-1542的代码稍微改改即可。 代码如下: 阅读全文
posted @ 2017-02-08 15:26 HuaZhang 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 题目链接:HDU-1828 题意为给定一堆矩形,求总周长。 与HDU-1542非常类似,同样是扫描线法。 做法是每次扫到一条线后,答案加上“覆盖总长度”变化的绝对值。即: 然后横着竖着各来一次即可。 代码如下: 阅读全文
posted @ 2017-02-08 15:09 HuaZhang 阅读(301) 评论(0) 推荐(1) 编辑
摘要: 题目链接:HDU-1542 题意为给定许多个矩形,求面积的并。 基本的思路是首先把所有矩形按照下边高度从下往上排序,然后依次计算每两条边(上下边)之间夹的面积大小。 如图,每条绿色的线叫做扫描线。我们想要做到的事情是每次求出两条扫描线间的面积,如图中序号。显然,假设有n个矩形,则有2n条扫描线,我们 阅读全文
posted @ 2017-02-08 14:36 HuaZhang 阅读(457) 评论(0) 推荐(0) 编辑