题目链接
题目类型:强联通分量+想法
题目分析
题目大意
n
个点,m
条边,问,最多再加上多少条边可以使图保持为非强联通图。
解析
参考文章:HDU 4635 Strongly connected(强连通分量)
主要思路:若为非强联通图,则必然存在两个集合X和Y,X内部可以连任意多条边,Y内部可以连任意多条边,但是只有X指向Y的边,不存在从Y指向X的边。因为我们希望边尽可能的多,所以,我们将X的所有点连向Y的所有点,假设X集合中的元素个数为a,Y集合中的元素个数为b,则两个集合之间连接a*b
条有向边。那么对于这样的图来说,总边数为:a*(a-1)+b*(b-1)+a*b
,此外,我们还知道另一个条件,a+b=n
,所以前一个公式又可以转化为这样的形式n*(n-1) - xy
,我们希望这个公式尽可能的大,所以我们希望abs(x-y)
尽可能的大。对应到题目中,就是选择一个入度为0
的分量或者一个出度为0
的分量,让他们包含的元素个数尽可能的少,把其他的分量连接成一个集合,这个元素最少的集合单独作为一个集合,然后求出来总边数减去原图中的边数即可。
图论里建图的想法是关键啊~!
代码
1 |
|