![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
————二分图匹配
BAJim_H
比孤独更可悲的事情,就是根本不知道自己很孤独,或者分明很孤独,却把自己都骗得相信自己不孤独。
展开
-
通俗易懂的匈牙利算法
最近复习算法的时候,发现好多讲匈牙利的教材都讲的特别恶心,其实这是一个非常容易理解的算法。匈牙利算法主要是求二分图的最大匹配主要思想是把左边的一个个匹配,冲突就尝试给前面的分配另一个点下面是详细解析 我们有四位同学,四个座位,每个同学都有自己喜欢的座位 首先是1号 1号同学直接坐在了A座位上 然后到2号 2号同学也直接坐在了B座位上 到了3号原创 2016-04-01 12:04:17 · 3858 阅读 · 2 评论 -
导弹防御塔(题解+代码)
DescriptionFreda的城堡——“Freda,城堡外发现了一些入侵者!”“喵…刚刚探究完了城堡建设的方案数,我要歇一会儿嘛lala~”“可是入侵者已经接近城堡了呀!”“别担心,rainbow,你看呢,这是我刚设计的导弹防御系统的说~”“喂…别卖萌啊……”Freda控制着N座可以发射导弹的防御塔。每座塔都有足够数量的导弹,但是每座塔每次只能发射一枚。在发射导弹时,导弹需要T1秒才能从防御塔中原创 2016-04-02 07:27:22 · 1692 阅读 · 1 评论 -
飞机调度
Description 作为一个旅行达人以及航空公司的金卡会员,你每一年的飞行里程可以绕赤道几周了。你发现,航空公司为了提高飞机的使用率,并不是简单的一条航线使用一架飞机来回飞,而是会让同一架飞机连续不停地飞不同的航线,甚至有的时候为了能够完成飞机的调度,航空公司还会增开一些临时航线——在飞机转场的同时顺路捎一些乘客。你研究了一下GDOI著名航空公司GD Airways的常规直飞航线,你想知道,原创 2016-04-23 16:16:55 · 4714 阅读 · 0 评论 -
[BZOJ4554][JZOJ4612] 【TJOI&HEOI2016】D2T1 游戏
Description 在2016年,佳缘姐姐喜欢上了一款游戏,叫做泡泡堂。简单的说,这个游戏就是在一张地图上放上若干个炸弹,看是否能炸到对手,或者躲开对手的炸弹。在玩游戏的过程中,小H想到了这样一个问题:当给定一张地图,在这张地图上最多能放上多少个炸弹能使得任意两个炸弹之间不会互相炸到。炸弹能炸到的范围是该炸弹所在的一行和一列,炸弹的威力可以穿透软石头,但是不能穿透硬石头。 给定一张n∗原创 2016-07-12 14:30:46 · 562 阅读 · 0 评论 -
[JZOJ5525] Atom
Description Solution可以先把回文树构出来那么一个节点的val就可以很容易在fail树上递推一下得到根据回文树的性质,我们发现对于某一个节点所代表的字符串是另一个节点所代表的字符串的子串,当且仅当一个节点能通过fail指针和父边(都是有向的)到达另一个节点可以二分答案,只有比答案大的点才能选问题就转化为在一个有向无环图中,选最多的点,使得任意两个选的原创 2018-01-18 12:00:29 · 137 阅读 · 0 评论 -
[AtCoder Regular Contest 080] F: Prime Flip (arc080F)
原题链接 https://arc080.contest.atcoder.jp/tasks/arc080_dDescription给出无限多的卡牌,从1开始顺序标号现在有N个卡牌是正面朝上的,给出它们的标号,其他的都是反面朝上你可以进行如下的操作 选择长度为奇质数的一段连续卡牌,将它们翻面求最少需要多少次操作使得所有卡牌反面朝上N<=100Solutio...原创 2018-02-27 12:34:17 · 256 阅读 · 0 评论 -
【树链剖分】【Hall定理】[JZOJ5824][BZOJ5404] Party
Description Solution我们发现颜色种类不多,只有1000种 因此我们可以用bitset来维护颜色集合。我们将这棵树轻重链剖分,用线段树维护链的颜色集合(空间为O(N*1000/32)),若倍增的话空间要多乘上log。 当我们需要查询一条链时,由于没有修改,我们大可以直接记录每个点到所在重链顶的颜色集合,这样原本log^2的时间复杂度就变成log的了。...原创 2018-08-16 22:50:05 · 260 阅读 · 0 评论 -
[JZOJ6071] 不同的缩写 【二分图匹配】【字符串】
DescriptionSolution显然答案具有可二分性,因此我们二分答案。现在问题变成了我们能否对于每个串都选出一个长度小于等于mid的子序列,它们互不相同可以确定的一点是,每个字符串只有n个本质不同子序列是有用的(因为选出n个肯定会有与其他不同的)那么我们对于每个串记录每个位置向后第一个a~z分别在哪里由于我们是要找长度小于等于mid的子序列,因此我们可以将每个串长度最小的n...原创 2019-03-19 16:16:05 · 269 阅读 · 0 评论