摘要: 秃子酋长 一看题面,感觉就是扫描线或者莫队 扫描线似乎是不太可能,那么考虑莫队 对于端点的移动,实质上就是要快速找前驱后继 那么显然的莫队 + set 可以做到 \(n\sqrt{n\log n}\) 之前在 lxl 的 ppt 中其实见过这种 \(O(n\sqrt n)\) 找前驱后继的问题,通过 阅读全文
posted @ 2022-06-04 11:37 Kzos_017 阅读(28) 评论(0) 推荐(0) 编辑
摘要: Day1 轻重边 这个题很明显就有树链剖分的感觉,但是这个路径比较难搞 可以发现每一个重边一定是在一次操作 1 中的路径上的一条边,并且两个端点,没有被其他的操作 1 覆盖过 那么我们为每一个端点赋一个时间值 那么问题就转换成了树上的一条路径有多少对相邻且值相等的点对 这个明显就可以合并信息了,那么 阅读全文
posted @ 2022-06-04 11:35 Kzos_017 阅读(50) 评论(0) 推荐(0) 编辑
摘要: Day1 美食节 这个题一看就感觉是个矩乘,因为数据范围这么大还和走路有关 为了保证一次只能走一格的规则,我们需要先处理这个边权 这个边权 \(w\leq 5\) 太小了,考虑直接拆了 最显著的拆法是将边拆成 \(w\) 段,前 \(w-1\) 段的边权为 0 ,第 \(w\) 段的边权为 \(c_ 阅读全文
posted @ 2022-06-04 11:34 Kzos_017 阅读(26) 评论(0) 推荐(0) 编辑
摘要: Day1 回家路线 这个题目首先显然可以建图,然后跑 DAG 上的最短路,但是边最大为 \(n^2\) ,但是实际上 CCF 造的数据好像很弱,所以这个方法也许能过 但是建图后就和正解无缘了,建图是以位置为标准去解这道题,然而你会发现没办法优化了 事实上第一眼看这个式子,很明显是个斜率优化,那么考虑 阅读全文
posted @ 2022-06-04 11:33 Kzos_017 阅读(22) 评论(0) 推荐(0) 编辑
摘要: Day1 归程 算是 Kruskal 重构树的裸题,感觉就是在卡科技 知道了 Kruskal 重构树后就没什么难度了 先建好重构树,那么每次询问其实就是在树上的某个点跳到深度最浅且海拔超过 p 的点所在子树中到 1 节点的最短路的最短长度 那么预处理出每个点到 1 的最短路,树上每个点子树中的最短距 阅读全文
posted @ 2022-06-04 11:33 Kzos_017 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 游戏 选 \(a\) 就必须选 \(b\) 这种逻辑语言,事实上就已经很有 2-SAT 的特征了 这个 \(d\leq 8\) ,那么考虑枚举每个 \(x\) 的场地类型 假设现在确定了所有的场地类型,对于场地 \(A\) ,要么选 \(b\) ,要么选 \(c\) ,对于场地 \(B,C\) 同理 阅读全文
posted @ 2022-06-04 11:32 Kzos_017 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 雨林跳跃 设 \(X=\max([B,C-1]),Y=\max(C,D)\) 如果 \(X>Y\) 那么一定有解,否则一定有解 可以发现越跳越高,并且 跳跃一段路程时一定满足自己已经比这一段的所有树都高 ,才能跳过去 所以最后一步跳跃一定是从一个高度为 \(X\leq T<Y\) 树跳到右边的区间中 阅读全文
posted @ 2022-06-04 11:31 Kzos_017 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 寿司晚宴 这个题目和素数的数量关系很大 对于 30 分,一个想法就是直接状压下质数,\(dp[S_1][S_2]\) 表示小 G 选了 \(S_1\) ,小 w 选了 \(S_2\) 的方案数 枚举每个寿司选或不选,谁选,这个就很好转移,但是 100 分的质数就太大了,绝对是压不下来的 讲实话当时我 阅读全文
posted @ 2022-06-04 11:31 Kzos_017 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 欧拉通路: 通过图中每条边且只通过一次,并且经过每一顶点的通路 欧拉回路: 通过图中每条边且只通过一次,并且经过每一顶点的回路 有向图的基图 忽略有向图所有边的方向,得到的无向图称为该有向图的基图 具有欧拉回路的无向图 G 被称为欧拉图 定理 无向图存在欧拉通路的充要条件是:图联通,并且只有两个奇度 阅读全文
posted @ 2022-06-04 11:29 Kzos_017 阅读(176) 评论(0) 推荐(0) 编辑
摘要: P8338 [AHOI2022] 排列 首先缩环,每个环有个数量, 对于有个点交换就是两个环合起来,然后求 lcm 这里需要知道一个很简单但是很重要的结论:对于 \(\sum a_i=n\) ,不同的 \(a_i\) 只会有 \(\sqrt n\) 的数量级 所以先去重一下,然后暴力枚举,那么就是 阅读全文
posted @ 2022-06-04 11:29 Kzos_017 阅读(27) 评论(0) 推荐(0) 编辑