_____图论_____
zxyoi_dreamer
退役了退役了爬了爬了,搞个锤子算法竞赛,不如好好享受大学生活。
展开
-
2018.08.30【校内模拟】T3 图论题 (dfs序)(线段树)
【描述】 给你一个图,一共有 N 个点,2*N-2 条有向边。 边目录按两部分给出 1. 开始的 n-1 条边描述了一颗以 1 号点为根的生成树,即每个点都可以由 1 号点到达。 2. 接下来的 N-1 条边,一定是从 i 到 1(2<=i<=N)的有向边,保证每个点都能到1 有q 次询问: 1 x w :表示将第 x 条边的边权修改为w...原创 2018-08-30 14:52:12 · 202 阅读 · 0 评论 -
2019.03.07【SDOI2018】【BZOJ5332】【洛谷P4619】旧试题(莫比乌斯反演)(三元环计数)
洛谷传送门 BZOJ传送门 解析: 很明显这是在致敬【SDOI2014】约数个数和。所以才叫"旧试题" 还是先化简式子。首先有二元组的结论,证明在上面那篇博客里面。 d(ij)=∑k∣i∑l∣j[gcd(k,l)=1]d(ij)=\sum_{k\mid i}\sum_{l\mid j}[\gcd(k,l)=1]d(ij)=k∣i∑l∣j∑[gcd(k,l)=1] 其实约数个数的结论可以推广...原创 2019-03-08 19:57:17 · 208 阅读 · 0 评论 -
【模板】带花树
存板子。 UOJ79 代码: #include<bits/stdc++.h> #define ll long long #define re register #define cs const using std::cerr; using std::cout; cs int N=5e2+7,M=N*N*2; std::vector<int> G[N]; int n,m,...原创 2019-09-07 23:23:59 · 145 阅读 · 0 评论 -
【校内模拟】fortress(费用流)(一般图最大匹配)
题面见校内OJ4694 题解: (费用流or直接建图)+(带花树orTutte矩阵求秩)四种写法我全部写了一遍。 由于两种方式建出来的图存在大量3元环,所以带花树求最大匹配收敛贼快,比Tutte矩阵快得多。 代码(费用流+带花树): #include<bits/stdc++.h> #define ll long long #define re register #de...原创 2019-09-07 23:31:22 · 211 阅读 · 0 评论 -
【WC2016】挑战NPC(带花树)
传送门 题解: 直接对于每个瓶子的三个匹配位置建点,连成完全图。 球和瓶子该连的边全部连上。 然后跑一般图最大匹配即可。 其实也可以先跑一遍用费用流优化常数,不想写了。 费用流做法就是每个瓶子建立三个点,通过赋费用来贪心流满前缀边,然后对于2,3位置只流了一个的,单独拿出来,有相同前驱的之间连边,跑一般图最大匹配。 而费用流不可能成为复杂度瓶颈,因为SPFA和全图DFS总次数是O(1)O(1)O...原创 2019-09-08 20:24:14 · 222 阅读 · 0 评论