摘要: 其实在写这个的代码的时候我是纳闷的,X集合和Y集合的点,能同时用1,或者2来表示吗? 然后我努力说服自己:它已经是二分图了 它就是存了一个 → 而已 好的我被自己说服了 二分图匹配说的就是,每个人有若干种选择,但是每种选择只能容纳一个人,问你最多能配对多少 或者说成选边的时候不能经过同一个点 最大匹 阅读全文
posted @ 2018-08-06 23:17 静听风吟。 阅读(1233) 评论(0) 推荐(0) 编辑
摘要: 我其实只是想练一练二分图判定的,但是翻到了一个这么个题。。 双栈排序早有耳闻,非常欣赏当年的出题水平,堪称经典 这个题AC的人一定是个天才 废话不多说,双栈排序的思路我就不介绍了,没有那个水平,直接来说说怎么二分图染色 这个方法,14年的时候练了很多次,当时习惯写BFS的,可能是因为所有点都要跑所以 阅读全文
posted @ 2018-08-06 22:39 静听风吟。 阅读(568) 评论(0) 推荐(0) 编辑
摘要: POJ2942:利用Tarjan求无向图的点双连通分支 首先科普一下点双连通分支的求法: 貌似看起来繁琐而复杂。。 然而复杂的确实这道例题,暂时没有找到特别裸的。。 题干大意是这样的,开会,然后给出了一张图,边所连接的两个点互相憎恶,开会的时候只能奇数个人一起圆桌开,问T几个人会世界和平 做法的话, 阅读全文
posted @ 2018-08-06 21:28 静听风吟。 阅读(640) 评论(0) 推荐(0) 编辑
摘要: POJ3177:利用Tarjan求无向图的边双连通分支 连通图去掉所有的桥(割边)之后,剩下的就是一块儿一块儿的边双连通分支了 那么这道题的描述是给定无向图G,问至少加入多少条边才能让原图成为一个双连通图 这个题的做法是利用Tarjan求出图中的所有桥,以桥为界限分出来的就是一个一个边的双连通分量 阅读全文
posted @ 2018-08-06 16:48 静听风吟。 阅读(1076) 评论(0) 推荐(0) 编辑
摘要: POJ2186:利用Tarjan强连通分量求缩点重构图 缩点就是在求出图的所有的强连通分量之后 把强连通分量都看成一个点 这样形成的一个新的图叫做缩点重构图 下面描述一下POJ2186的题意: 给出n个点和m条边(点与点之间的关系),关系具有传递性,问最后有多少点满足其他所有点都能够通达到此 首先我 阅读全文
posted @ 2018-08-06 11:01 静听风吟。 阅读(645) 评论(0) 推荐(0) 编辑
摘要: Luogu2863:利用Tarjan求有向图的强连通分量 强连通分量这这样的一个子图: 图中的任意两点都可以相互通达,它是有向图 这里的例题题意是这样的,统计所有强连通分量中,至少包含两个点的强连通分量的数量 这里面把强连通分量的点放在st栈里,用vis进行存在性标记 col的意思是下标属于哪一个强 阅读全文
posted @ 2018-08-06 10:14 静听风吟。 阅读(161) 评论(0) 推荐(0) 编辑
摘要: UVA796:利用Tarjan求无向图的割边(桥) Tarjan求割边和求割点的差异不大 这里有的变量在上一篇博文中已经介绍过了 我们看到mp映射是用来替代二维数组进行判重的 本来打算换成hash_map但是发现并不好用,这是个必须要补的坑 这里的判重是判断是否有重边,由于权重都是1所以并不需要进行 阅读全文
posted @ 2018-08-06 09:47 静听风吟。 阅读(478) 评论(0) 推荐(0) 编辑