摘要: 定义 割点:无向图中,若删除点及其连边,连通块变多,那么被删除的点为割点 点双连通:若无向图中点对 \(x,y\),删除任意非 \(x\) 和非 \(y\) 节点后,\(x\) 和 \(y\) 任然连通,陈 \(x,y\) 点双连通 点双连通子图:无向图中的一个子图 \(G\),\(G\) 中任意 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 由于四边形不等式太难了,所以只有应用,证明的自己考场上去猜 优化思路 考虑当状态转移满足四边形不等式时,具有决策单调性,即一种状态只会在一段特定的区域内生效,并且具有单调性 P4767 [IOI2000] 邮局 加强版 先打暴力,设 \(d_{ij}\) 为前 \(i\) 个村庄,\(j\) 个邮局 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 哇,奇奇怪怪的 \(dp\) 思路 首先由于每一行每一列都只能放一个棋子,所以我们考虑在第 \(i\) 列放不放棋子,但是考虑到行可能也有影响,所以我们记录之前放了多少个,即有多少行不能放棋子,然后状态就为 \(f_{ij}\) 不过我们发现如果从大列的小列的转移会出现一些差错,需要剪掉一些被占行, 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 思路 考虑 \(dp\),那么我们就需要装压 \(dp\),所以我们考虑是否可以通过改变拓扑序,来让题目变成我们熟悉的背包 \(dp\),所以我们来思考一下,什么时候交换顺序反而更优? 考虑 \(i\) 和 \(i + 1\),那么如果为 \(f_{i+1}(f_i(x))\) 那么贡献为: \(a 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 将原字符串按通配符划分为若干段 维护 \(p_i\) 表示第 \(i\) 个通配符的原始下标 定义 \(f_{ij}\) 表示前 \(i\) 的通配符完成 \(t\) 串前 \(j\) 个字符,是否可行 若 \(f_{ij-1} = true\) 则 \(f_{ij} = true\) 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 重链剖分 思路 考虑将一个节点的儿子中所在子树最大的一个儿子作为重儿子,相连的边为重边,每次延重儿子划分划出来的链我们称之为重链。 对于一条链如果往上跳,必然是个轻边,所以必然存在一个重儿子的字数大于当前链所在子树,所以没往上条链,子树大小至少为原来两倍,所以时间复杂度为 \(logn\)。 cod 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 主要应用于在大数范围内统计 \([L,R]\) 满足条件的数值的个数 在 \([L,R]\) 内寻找满足条件的特定数值 按数位进行预处理和统计。 思路 预处理 \(f_{ij}\) 表示 \(i\) 位数且高位为 \(j\) 的满足条件的数的个数 从高位到低位添数统计答案 需要注意是否要统计前导零, 阅读全文
posted @ 2024-08-21 21:33 yabnto 阅读(2) 评论(0) 推荐(0) 编辑