
二分图
ACM败犬
这个作者很懒,什么都没留下…
展开
-
P1640 [SCOI2010]连续攻击游戏:(二分图)
lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示。当他使用某种装备时,他只能使用该装备的某一个属性。并且每种装备最多只能使用一次。游戏进行到最后,lxhgww遇到了终极boss,这个终极boss很奇怪,攻击他的装备所使用的属性值必须从1开始连续递增地攻击,才能对boss产生伤害。也就是说一开始的时候,lxhgww只能使用...原创 2019-04-18 15:57:19 · 206 阅读 · 0 评论 -
CF_101853B New Assignment (二分图+基础数论+仔细读题)
题目大意: 给n个人分组,这n个人格子有一个权值,分组条件是,组内人数不大于2人,必须异性,且gcd > 1。问最少分几组,对于所有的输入数据有: n <= 10000,ai <= 1000000,且任意三个人 必定互质(gcd = 1)。显然可以贪心得出尽量多分2人的组可以使组数最少,因为一组最多两人,而且必须异性,gcd必须大于1,很容易看出是一个二分图匹配模型。但是 n ...原创 2019-04-09 22:53:46 · 274 阅读 · 0 评论 -
HDU2819:Swap(二分图+模拟)
题意:给一个n * n的矩阵,矩阵每个位置的值是0或1,问能否通过多次交换两行或者两列得到一个主对角线都是1的矩阵?如果能,输出交换次数和交换方案。这题可以用二分图来搞。通过线性代数可知,只交换行或列就行了。考虑只交换行,可以用二分图建模。每一行对于列为1的列编号(设为i),表示这一行可以放在第i行,设这一行是第a行,可以建一条 a -> i 的边。观察一下发现输入的矩阵刚好就是我们要建的...原创 2019-04-09 22:22:15 · 190 阅读 · 0 评论 -
HDU1045:Fire Net(拆点+二分图)
题意是给一个最多4*4的网格图,其中有些地方障碍,现在在无障碍的格子放棋子,各个棋子不能同行同列,问最多可以放多少个棋上去。如果是n*m的无障碍网格图,能放的最多的棋子个数是min(row,col)。如果有障碍,因为这个图最多只有 4*4,完全可以枚举每个点放和不放,然后暴力搜索,check一下。这里主要是讲二分图的思路:因为行列不能相同,以行,列建二分图。一行有障碍的情况或一列有障碍的情...原创 2019-04-04 10:18:10 · 168 阅读 · 0 评论 -
hdu2236无题II(枚举+二分+二分图)
题目大意:在n*n矩阵中找n个数使得这n个数不同行不同列,且差值最小。根据这n个数不同行不同列,我们可以用行对列建二分图,跑最大匹配判断是否为n。要求差值最小,可以用枚举差值判断是否能跑出最大匹配。可知在这里差值具有单调性,差值越大越容易跑出二分匹配(包含的点更多),可以二分枚举最小值和差值,每次跑一下二分匹配判断最大匹配是否等于n即可。可是我的hopcroft crap 怎么比匈牙利还慢。。...原创 2019-04-03 21:53:12 · 215 阅读 · 0 评论 -
洛谷p2055:假期宿舍(二分图)
题目描述学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题。比如 A 和 B 都是学校的学生,A 要回家,而 C 来看B,C 与 A 不认识。我们假设每个人只能睡和自己直接认识的人的床。那么一个解决方案就是 B 睡 A 的床而 C 睡 B 的床。而实际情况可能非常复杂,有的人可能认识好多在校学生,在校学生之间也不一定都互相认识。我们已知...原创 2019-04-03 21:26:53 · 186 阅读 · 0 评论 -
洛谷P3254:圆桌问题(二分图多重匹配,网络流最大流)
分析:每个代表团的人数为ai,建(s,i,ai),每张桌子能容纳bj,建(j,t,bj)。每个代表团对所有桌子建(i,j,1),跑最大流判断是否满流。输出方案:遍历网络图每条跑满的边,用桶记录的答案。#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;const int maxm = 2...原创 2019-08-02 11:08:32 · 200 阅读 · 0 评论 -
洛谷P2774:方格取数问题(二分图最大权独立集,最小割模型)
题解:用最小割模型求解二分图最大权独立解。方法的可行性和证明可参考《最小割模型在信息学竞赛中的应用》论文。建图时将二分图X部和S相连,容量为点权,Y部和T点相连,容量为点权,原图的边保留。由于是网格图,不需要二分染色,观察可以发现下标(x,y) x 和 y同奇偶的一定是在同一个部,不同奇偶的在另一个部。#include<bits/stdc++.h>using namespac...原创 2019-08-02 13:17:34 · 191 阅读 · 0 评论