题意 N个人抢M个椅子,M个椅子排成一排 ,第i个人只能坐[1,Li]∪[Ri,M],问最多能坐多少人 $i$人连边向可以坐的椅子构成二分图,题意即是求二分图最大完美匹配,由霍尔定理,答案为$max(|X|-\omega(X))$,$X$为人的集合,$\omega(X)$可以表示为$[1,l] \cup[r,M]$,所以可以枚举$\omega(X)$也就是$(l,r)$,求出最大的$|X|$,也就是满足$L_i\le l \land r \le R_i$的$i$的数量,也就是平面上以$(l,r)…
题面 题目大意: 给你\(m\)张椅子,排成一行,告诉你\(n\)个人,每个人可以坐的座位为\([1,l]\bigcup[r,m]\),为了让所有人坐下,问至少还要加多少张椅子. Solution: 为什么加椅子?我们可以在最左边或最右边一直加直到人人都有座位. 首先这道题目抽象成二分图很简单,然后我们可以只要求解出人与座位的最大匹配是多少,总人数减去即可,但跑二分图最大匹配显然会超时,我们就可以往霍尔定理方面想. 然后你还需要知道一个霍尔定理推论:假设某个人的集合为\(X\),这个集合所对应的…
---题面--- 题目大意: 有n个人,m个座位,每个人可以匹配的座位是[1, li] || [ri, m],可能有人不需要匹配座位(默认满足),问最少有多少人不能被满足. 题解: 首先可以看出这是一个二分图匹配,根据hall定理,我们只需要求出max(人的子集大小 -  被选出的人可以选的座位集合大小). 但是枚举人的复杂度太高,所以考虑枚举座位集合,因为每个人的可选区间都是一段前缀or后缀,因此要表达一个合法的座位集合,我们只需要所有人中最右边的li和最左边的ri即可. 如图所示: 因此这个…
题意 地上 \(1\) 到 \(m\) 个位置摆上椅子,有 \(n\) 个人要就座,每个人都有座位癖好:选择 \(\le L\) 或者 \(\ge R\) 的位置.问至少需要在两边添加多少个椅子能让所有人坐满. \(m\le n\le 2\times 10^5\) 分析 因为最后的形式一定是左边和右边连续的一段+一些新加入的椅子.只需要求出所有人构成的子集 \(|x|-|\digamma (x)|\) 的最大值,不需要知道具体哪些椅子参与了完美匹配. 注意到区域的并除了全集以外仍然可以用 \([…
题目链接 Problem Statement There are M chairs arranged in a line. The coordinate of the i-th chair ($$$1≤i≤M$$$) is $$$i$$$.N people of the Takahashi clan played too much games, and they are all suffering from backaches. They need to sit in chairs and re…
题意 题目链接 分析 又是一个二分图匹配的问题,考虑霍尔定理. 根据套路我们知道只需要检查 "区间的并是一段连续的区间" 这些子集. 首先将环倍长.考虑枚举答案的区间并的右端点 \(r\),显然 \(r\) 应该在某个区间的右端点上.我们想要判断是否存在一个 \(l\) 使得 \(r-l+1\le m\) 且 \(\sum\limits_{l\le L_i,R_i\le r}a_i>r-l+1\) ,扫描线+线段树 即可. 有一类特殊情况:区间的并是整个环,这时它在序列上的表示长…
题意 一共有 \(n\) 堆石子,每堆石子有一个数量 \(a\) ,你要进行 \(m\) 次操作,每次操作你可以在满足前 \(i-1\) 次操作的回答的基础上选择在 \([L_i,R_i]\) 区间中拿走至多 \(b\) 颗石子,保证区间不存在包含关系,求每次你最多拿走多少颗石子. \(n\le 4\times 10^4\) 分析 二分图匹配复杂度太高,考虑霍尔定理. 假设某次操作时我们已经知道了每次操作取走多少颗石子,我们选择判断的操作集合一定是按 \(L\) 排序之后连续的(因为能够选择的区…
题意 题目链接 分析 这个二分图匹配模型直接建图的复杂度太高,考虑霍尔定理. 对于某些人组成的区间,我们只需要考虑他们的并是一段连续的区间的集合.更进一步地,我们考虑的人一定是连续的. 假设我们考虑的区间的总人数为 \(x\) ,区间长度为 \(len\), 那么 \(x-(len+d)*k>0\) 于是 \(x-k*len>dk\) ,维护连续最大和即可. 总时间复杂度为 \(O(nlogn)\). 代码 #include<bits/stdc++.h> using namespa…
题意: n个人抢m个凳子,第i个人做的位置必须小于li或大于ri,问最少几个人坐不上. 这是一个二分图最大匹配的问题,hall定理可以用来求二分图最大匹配. 关于hall定理及证明,栋爷博客里有:http://blog.csdn.net/werkeytom_ftd/article/details/65658944 可以推出答案为$max\{|x|-Γ(X)\}$,x为左侧点的一个子集,Γ(X)为这些点能到达的右侧点的集合. 证明: 因为二分图有完美匹配的充要条件是对于所有的x都有Γ(X)>=|x…
题意: 有 n 群怨灵排成一排,燐每秒钟会选择一段区间,消灭至多 k 只怨灵. 如果怨灵数量不足 k,则会消灭尽量多的怨灵. 燐作为一只有特点的猫,它选择的区间是不会相互包含的.它想要知道它每秒最多能消灭多少怨灵. 要求:在之前每次都消灭尽量多的怨灵的情况下,求第 i 秒最多能消灭的怨灵的数量. 首先,这题可以用网络流做部分分. 考虑如何判断是否可行: 有一种显然的二分图匹配:把每个询问放在X部,怨灵放在Y部. 然后,把询问,怨灵分别拆点,进行区间连边,做匹配,如果有完美匹配,则可行. 但是,如…