摘要: 建图:王子u喜欢女孩v,则u到v连一条边。对于给出的初始完美匹配,王子u与女孩v匹配,则v到u连一条边。然后求SCC。 显然对于同一个SCC中王子数目和女孩数目是相等的,并且从某个王子出发能够到达所有女孩,这样,王子可以和属于同一个SCC中的任意一个女孩结婚,而不会影响其他王子。 #include 阅读全文
posted @ 2018-07-13 23:31 WTSRUVF 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 求在图中新建一条边后 剩下的最少的桥的数量。。先tarjan求桥的数量。。然后缩点。。以连通分量为点建图 bfs求直径 最后用桥的数量减去直径即为答案 bfs求直径 https://www.cnblogs.com/WTSRUVF/p/9307517.html #include <iostream> 阅读全文
posted @ 2018-07-13 21:41 WTSRUVF 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 两遍bfs即可 分析:一开始任取一个点u进行搜索查找出距离点u最远距离的点v和长度 第二次dfs则从第一次中的v找出距离点v最远距离的点的路径长度 阅读全文
posted @ 2018-07-13 21:39 WTSRUVF 阅读(203) 评论(0) 推荐(0) 编辑
摘要: G(i) = (gcd(1, i) + gcd(2, i) + gcd(3, i) + .....+ gcd(i-1, i)) ret = G(1) + G(2) + G(3) +.....+ G(n); 对于gcd(x,i),我们设gcd(x,i) = m 即x和i的最大公约数为m 则x/m 和 阅读全文
posted @ 2018-07-13 17:46 WTSRUVF 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 想法一: 找出强联通块,计算每个连通块内的点数。将点数最少的那个连通块单独拿出来,其余的连通块合并成一个连通分量。 那么假设第一个连通块的 点数是 x 第二个连通块的点数是 y 一个【强】连通图最多(每两个点之间,至少存在一条课互相到达的路径)的边数为n*(n-1) 一个连通图的边数至少为n*(n- 阅读全文
posted @ 2018-07-13 14:30 WTSRUVF 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 题意: 在图中加边 看最少能通过加多少条边把 图变成边—双连通分量 解析: 先做一次dfs,不同的连通分量的low是不同的 注意重边 缩点 统计度为1的点 那么需要加的边为(ret+1)/2 阅读全文
posted @ 2018-07-13 12:25 WTSRUVF 阅读(188) 评论(0) 推荐(0) 编辑