上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 17 下一页
摘要: 棋盘覆盖 匈牙利算法 #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(false);cin.tie(0); cout.tie(0) inline int lowbit(int x) { ret 阅读全文
posted @ 2021-02-22 17:05 phr2000 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 关押罪犯 #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(false);cin.tie(0); cout.tie(0) inline int lowbit(int x) { return x 阅读全文
posted @ 2021-02-22 17:03 phr2000 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 矿场搭建 \(\href{https://www.acwing.com/solution/content/24931/}{点连通分量的缩点}\) #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio 阅读全文
posted @ 2021-02-21 20:55 phr2000 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 电力 \(\href{https://www.acwing.com/solution/content/20702/}{点连通分量}\) #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(fals 阅读全文
posted @ 2021-02-21 20:53 phr2000 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 冗余路径 \(\href{https://www.acwing.com/solution/content/20697/}{边连通分量}\) \(本题是等价于加入最少边是整个图变成边连通分量(没有桥)\) #include <bits/stdc++.h> using namespace std; #d 阅读全文
posted @ 2021-02-21 20:46 phr2000 阅读(48) 评论(0) 推荐(0) 编辑
摘要: https://www.acwing.com/problem/content/1177/ \(强连通必然半连通,将强连通图转化为拓补图,从起点出发,能走的所有\color{Red}{最长的路径即为最大半连通子图}\) \(问题就转化为在拓补图上做dp的问题\) \(注意缩点后,每个点间只用保留一条边 阅读全文
posted @ 2021-02-20 01:50 phr2000 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 受欢迎的牛 \(tarjan将强连通分量缩点转化成拓扑图的原理看\)这里 \(最受欢迎的牛必然是拓补图的终点,且若图中不止一个终点,必然没有某个牛被所有牛欢迎\) #include <bits/stdc++.h> using namespace std; #define IO ios::sync_w 阅读全文
posted @ 2021-02-20 01:42 phr2000 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 闇の連鎖 \(\color{Red}{本题的实质是看一条边属于几个环}\) \(如图, 如何使标记的边的覆盖次数+c ?\) \(我们把边权看成是其子树下所有点权之和,如果我需要增加x到p与y到p之间的边权,p=lca(x,y),\\那么只需要将x标记为x+c,y标记为y+c,p标记为p-2c\) 阅读全文
posted @ 2021-02-19 16:31 phr2000 阅读(49) 评论(0) 推荐(0) 编辑
摘要: \(Tarjan\ O(m + n)\) \(Tarjan为离线算法\) \(在线做法:边读边做\) \(离线做法:先读完,再全部处理,最后全部输出\) \(Tarjan本质上是对向上标记法的优化,首先任取一个点当成根节点向下做dfs,并将所有节点分为三部分\) \(已经遍历并完成了回溯的点标记为2 阅读全文
posted @ 2021-02-18 21:45 phr2000 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 最近公共祖先 \((1)向上标记法\ O(n)\) \((2)倍增:fa[i,j]表示从i开始,向上走2^j步所能走到的节点,0 \le j\le log_2n,depth[i]表示深度\) \(步骤\) \(先将两个点跳到同一层\) \(让两个点同时往上跳,一直跳到它们的最近公共祖先的下一层\) 阅读全文
posted @ 2021-02-18 14:12 phr2000 阅读(67) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 17 下一页