随笔分类 - 图论
摘要:题目连接: 题意:给定n个点m次操作,有两种操作,M a b 操作是将a b合并到一起,S a 操作是从a所在的集合中删除a点,所有的操作结束后输出集合的个数。 题解:用并查集。删除集合中的点,建立虚父节点。 删除操作: 合并操作就是找到找到两个节点的父亲,修改父亲,如果删除就是将该点的父亲重新设置
阅读全文
摘要:链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=3938 题意:给出 n个点,m条边的无向图,给出q次查询,每次的查询给出一个l,使得在l的范围下,建尽可能多的边,求问在建这些边的情况下,有多少条路径(任意两点可到达的对数) 题解:离线的并查集,
阅读全文
摘要:置换群还是没有深刻的理解,但是做了这题确实让我理解好多 参考文章: 使数组有序的最小交换次数 http://blog.csdn.net/gettogetto/article/details/69389810 邝斌带我飞~~ http://www.cnblogs.com/kuangbin/archiv
阅读全文
摘要:题意:给出两图,判断是否是同构图。 题解:判断给出的链和环,若果是链,则判断链里边时候是同构,排序。如果是环,则判断环里边的个数。 要判断每个点,把每条边加入到并查集中去,记录是环或者链。每次并查集加入的时候,链或者环的长度会变化,所以要改变链的长度。
阅读全文
摘要:这题面是外星人写的吧 定义一个群,其元素为一个矩阵,定义一个该群的元素M,并且M存着一个图。 定义一个二元运算符*,运算结果仍为该群的元素。 如M*M=R,则R(i,j)=Min(Rij,Mik+Mkj) 这个操作满足交换律和结合律。 其意义代表不言而喻。(手动滑稽) 因此可利用快速幂求解。
阅读全文
摘要://首先判环我都不会 dfs实在写的戳 后来测了好多数据发现dfs写错了 唉 其次不会哈希啊 这个哈希还是dalao手写给我的 珍惜!!!#include #include #include #include #include #include #include #include #include #define ULL unsigned long long using nam...
阅读全文