随笔分类 -  acm / 图论

摘要:拆点 + 最大流 G - Erasing Prime Pairs (atcoder.jp) 题意 有 n(n <= 100)种互不相同的数,分别是 A[i] (<=1e7), 每个有 B[i] 个 每次可以任意取两个数,如果相加是素数就消去这两个数,求最多操作次数 思路 思路一、 不考虑 1 阅读全文
posted @ 2022-09-08 22:21 hzy0227 阅读(45) 评论(0) 推荐(0) 编辑
摘要:DP + 最短路 + 哈希 G - String Fair (atcoder.jp) 题意 给若干个只包含小写字母的长度<=3 的字符串 Ti,每个字符串有权值 构造一个非空字符串 S,若 S 中包含上述子串,则加上这个子串的权值,求 S 的最大权值和 思路 由于 Ti 的长度不超过 3 阅读全文
posted @ 2022-09-07 17:22 hzy0227 阅读(30) 评论(0) 推荐(0) 编辑
摘要:飞行路线(分层图) JLOI2011] 飞行路线 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 最多有 k 条航线可以免费走,就让建 k + 1 层图,dist[i][j] 表示从第 0 层起点经过 j 条免费航线到达第 i 结点,答案就是 min(dist[t][j]) 阅读全文
posted @ 2022-07-22 13:29 hzy0227 阅读(158) 评论(0) 推荐(0) 编辑
摘要:Minimum Or Spanning Tree(代码源每日一题) Minimum Or Spanning Tree - 题目 - Daimayuan Online Judge 贪心,最小生成树 由于生成树的代价是各边权值的按位或,因此按位数从大到小贪心 若当前位能全用 0 边构成生成树就全用 0 阅读全文
posted @ 2022-06-13 15:02 hzy0227 阅读(20) 评论(0) 推荐(0) 编辑
摘要:E - Ring MST 数论,最小生成树 根据 kruskal 的原理,将边排序取最小的、可以两端点未联通的前 n1 条边即可,但本题的边数是 nm 级别,不能排序 只有 m 种操作,每种操作的代价是相同的,第 i 种操作是连接 x 与 \((x+A_i 阅读全文
posted @ 2022-06-10 17:01 hzy0227 阅读(72) 评论(0) 推荐(0) 编辑
摘要:2 - sat 模板 P4782 【模板】2-SAT 问题 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include <iostream> #include <algorithm> #include <cstring> #include <vector> #include 阅读全文
posted @ 2022-06-10 15:40 hzy0227 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Arbitrage 判正环 套利问题,给出若干对货币兑换的汇率,求能否通过汇率兑换使钱越来越多 floyd求最长路,如果某一点到自身的最长路大于 1, 则可以 tarjan 判正环 #include <iostream> #include <cstring> #include <algorithm> 阅读全文
posted @ 2022-05-26 11:17 hzy0227 阅读(60) 评论(0) 推荐(0) 编辑
摘要:仓鼠找 sugar LCA SCUACM2022集训前训练-图论 - Virtual Judge (vjudge.net) 首先要观察出一个结论:若 a - b 的路径与 c - d 的路径相交,设 a, b 的 LCA 为 x; c, d 的 LCA 为 y 则有 x 在 c - d 路径上 或 阅读全文
posted @ 2022-05-25 21:52 hzy0227 阅读(10) 评论(0) 推荐(0) 编辑
摘要:Cow Contest floyd求传递闭包 SCUACM2022集训前训练-图论 - Virtual Judge (vjudge.net) 若 a 大于 b,则连一条 a - > b 的边,一个点能走到的点就是比它小的点 跑一遍 floyd,就可知道任意两个点的大小关系 枚举 i, j,如果 i 阅读全文
posted @ 2022-05-25 21:47 hzy0227 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Wormholes spfa 判负环 SCUACM2022集训前训练-图论 - Virtual Judge (vjudge.net) #include <iostream> #include <cstring> #include <algorithm> #include <vector> #incl 阅读全文
posted @ 2022-05-25 21:44 hzy0227 阅读(27) 评论(0) 推荐(0) 编辑
摘要:灾后重建 P1119 灾后重建 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) floyd 本题考查 floyd 算法的本质: for (int k = 1; k <= n; k++) for (int i = 1; i <= n; i++) for (int j = 1; j < 阅读全文
posted @ 2022-05-25 13:20 hzy0227 阅读(73) 评论(0) 推荐(0) 编辑
摘要:C - Fox And Names 拓扑排序 要自定义字典序使给出的字符串是按字典序递增的顺序 可对于前后两个字符串可找到一组字母间的关系,转化为差分约束问题 #include <iostream> #include <cstring> #include <algorithm> #include < 阅读全文
posted @ 2022-05-19 19:17 hzy0227 阅读(36) 评论(0) 推荐(0) 编辑
摘要:D - Substring 拓扑排序 #include <iostream> #include <cstring> #include <algorithm> #include <vector> #include <cmath> #include <queue> using namespace std 阅读全文
posted @ 2022-05-19 19:13 hzy0227 阅读(20) 评论(0) 推荐(0) 编辑
摘要:D - Toss a Coin to Your Graph... 二分 + 判环 + DAGDP 最大值最小化可以想到二分答案 check过程为只给小于等于答案的点之间连边,虽然 k 很大,但如果存在环则一定可以,不存在环就求当前图的最长路,如果最长路 ⇐ k - 1 则可以 判环和求最长路都可用拓 阅读全文
posted @ 2022-05-19 00:02 hzy0227 阅读(39) 评论(0) 推荐(0) 编辑
摘要:ACWING 368 银河 缩点 + DAG DP + 差分约束 368. 银河 - AcWing题库 tarjan 缩点 判原图中是否有正环,因为原图上所有边都是非负的**(这也是用强连通分量解差分约束的必要条件,否则若有正权边也有负权边,若环上边权总和仍为0,则并不能说明是矛盾的)**, 所以如 阅读全文
posted @ 2022-05-18 16:08 hzy0227 阅读(16) 评论(0) 推荐(0) 编辑
摘要:受欢迎的牛 缩点 USACO03FALL / HAOI2006] 受欢迎的牛 G - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 用 tarjan 缩点后,在每个强连通分量中的点都可以互相到达。 在 DAG 中 如果有大于 1 个出口,则两个出口之间肯定不能相互到达,所以没有明星 阅读全文
posted @ 2022-05-17 21:32 hzy0227 阅读(22) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示