Prelude 好,HAOI2017终于会做一道题了! 传送到洛谷:→_→ 传送到LOJ:←_← 本篇博客链接:(●'◡'●) Solution 首先要读懂题. 考场上我是这样想的QAQ. 我们把每个城市看作一个点,在"当前没有贸易关系"的城市之间连边. 此时,如果一个城市集合是一个城市群,那么这个城市集合中的任意两个城市之间都没有边. 因为"可以划分为两个城市群",所以这个图是个二分图. 那么"最大城市群"就是二分图的最大独立集. "…
[Luogu3731][HAOI2017]新型城市化(网络流,Tarjan) 题面 洛谷 给定一张反图,保证原图能分成不超过两个团,问有多少种加上一条边的方法,使得最大团的个数至少加上\(1\). 题解 本来并不会做的,看题解第一句话就会了QwQ 对于在反图上没有边的点之间是存在一条边的. 那么考虑原图的一个团对应在反图上是什么,因为原图的团内的点两两之间有边,所以对应在反图上两两之间无边.所以原图的一个团对应着反图的一个独立集. 因为原图可以分解为不超过\(2\)个团,所以反图可以分解成一个二…
http://poj.org/problem?id=1904 Description Once upon a time there lived a king and he had N sons. And there were N beautiful girls in the kingdom and the king knew about each of his sons which of those girls he did like. The sons of the king were you…
这题原来以为是某种匹配问题,后来好像说是强连通的问题. 做法:建图,每个方老师和它想要的缘分之间连一条有向边,然后,在给出的初始匹配中反向建边,即如果第i个方老师现在找到的是缘分u,则建边u->i.这样求出所有的强连通分量,每个强连通分量中方老师和缘分的数目一定是相等的,所以每个方老师一定可以找到与他在同一个强连通分量里的缘分,因为强连通分量中每个点都是可达的,某个方老师找到了其强连通分量中的非原配点,则该原配缘分一定可以在强连通分量中找到"新欢".可以画个图看看. 由于要构造非…
将未建立贸易关系看成连一条边,那么这显然是个二分图.最大城市群即最大独立集,也即n-最大匹配.现在要求的就是删哪些边会使最大匹配减少,也即求哪些边一定在最大匹配中. 首先范围有点大,当然是跑个dinic,转化成最大流.会使最大流减少的边相当于可能在最小割中的边,因为删掉它就相当于无代价的割掉了一条边.那么用曾经看到过的结论就可以了:当且仅当该边满流且残余网络(包括反向边)中该边两端点处于不同SCC时,该边可能在最小割中.不太会证.于是tarjan一发就可以了.注意不要把开始给的图和网络流建图搞混…
题目链接:https://vjudge.net/problem/HDU-2389 Rain on your Parade Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 655350/165535 K (Java/Others)Total Submission(s): 4889    Accepted Submission(s): 1612 Problem Description You’re giving a party in t…
题目链接(洛谷):https://www.luogu.org/problemnew/show/P3731 题意概述:给出一张二分图,询问删掉哪些边之后可以使这张二分图的最大独立集变大.N<=10000,0<=M<=min (150000,N(N-1)/2). 这个题首先你得总结出题意就是这个样子不然就是凉的..... 二分图的最大独立集,可以想到网络流完成(定理:二分图的最大独立集=二分图点数-二分图最大匹配).当最小割边小的时候独立集就变大了,因此问题变删掉哪些边可以让最小割变小. 这…
我到底怎么建的图为啥要开这么大的数组啊?! 神题神题,本来以为图论出不出什么花来了. 首先要理解'团'的概念,简单来说就是无向图的一个完全子图,相关概念详见度娘. 所以关于团一般都是NP问题,只有二分图例外.而题目中有这样一句话"n座城市可以恰好被划分为不超过两个城市群",并且给出的是没有的边,也就是这个图的补图,两个团就很显然表示这个补图是个二分图(我一开始还考虑1个团咋整后来发现根本不用整= =),模型就变成了二分图的最大独立集,考虑最大独立集=n-最大匹配,那么只要求出删掉哪些边…
洛谷 题意: 给出两个最大团的补图,现在要求增加一条边,使得最大最大团个数增加至少\(1\). 思路: 我们求出团的补图,问题可以转换为:对于一个二分图,选择删掉一条边,能够增大其最大独立集的点集数. 然后做法就是考虑在最大流的残余网络上,对容量为\(1\)的边求强连通分量(包含源点.汇点). 若存在一条边\((x,y)\)为匹配边,并且\(x,y\)在不同的强连通分量中,那么\((x,y)\)这条边为必经边,即最大匹配中包含这条边:若\((x,y)\)为非匹配边并且\(x,y\)在同一强连通分…
题目分析: 这题出的好! 首先问题肯定是二分图的最大独立集,如果删去某条匹配边之后独立集是否会变大. 跑出最大流之后流满的边就是匹配边. 如果一个匹配边的两个端点在一个强连通分量里,那这条边删掉之后我们就可以找到一个替代方案使得匹配不变小. 具体的,假设这两个点是x,y.因为两者之间连的是匹配边,那么存在一个路径从t->y->x->s.那只要从s有另一条路径到y或者从x有另一条路径到t那就构成一个强连通分量,我们只考虑s到y的情况. 如果存在一条这样的路,我们会发现每次从X集合跳到Y集合…