随笔分类 - 点分治
摘要:T1 一个网格,每个点有权值,求有多少条路径权值乘积不小于 $n$ $R,C \leq 300, n \leq 10^6$ sol: 暴力 dp 是 $O(R \times C \times n)$ 的 然后发现如果一条路径大于 $n$ ,直接把它设成 $n$ 即可,然后又发现 $\lfloor \
阅读全文
摘要:交互题 一棵树,一开始只有 1 号点是已知的,其他的都是未知的,你可以调用函数 explore(x,y) ,其中 x 必须是已知的,函数会找到 x 到 y 路径上第二个点,并把它标成已知,求最小步数使整棵树都已知 对于 30% 的数据,是一条链,操作次数 $O(n+logn)$ 剩下的数据,操作次数
阅读全文
摘要:一个有点权和边权的二叉树,多次询问点权在 $[L,R]$ 的点到 $u$ 的距离和 $n,q \leq 100000$ sol: 1.点分治 建出分治树的结构,考虑计算距离的过程 我们知道 $dis(u,v) = dep_u + dep_v - 2 \times dep_{lca}$ 因为树高是 l
阅读全文
摘要:T1 少膜一个,T3 暴力写挂 强势 rank1 -> rank2 一场比赛两道线段树分治,给力 T1 password 给你 m 个禁止字符串,求长度为 n 的所有字符串中至少包含这些禁止字符串各一次的字符串数量 $n \leq 10^9,m \leq 4,\sum len \leq 50$ so
阅读全文
摘要:众所周知 点分治是基本操作 ——Destinies_Gdx 点分治是处理树上路径问题的很好的方法,它可以把树变成一棵平衡的二叉树来使很多看起来是 $O(n^2)$ 的操作变成 $O(nlogn)$ 的 poj1741 Tree 给你一棵树,求长度不超过 k 的简单路径数量 sol: 点分治 每次找一
阅读全文

浙公网安备 33010602011771号