随笔分类 - 题解 / Atcoder 题解
Atcoder 题解
摘要:ARC141F,极端值原理。
阅读全文
摘要:非常好 dp,使我线段树旋转。 原题传送门 分析 首先由于两点之间直线线段最短,我们肯定是希望从头一直送到尾,最后回家。但是有了 \(k\) 的限制,就麻烦了。 考虑一个 dp。我们设 \(dp[i]\) 表示刚送完第 \(i\) 个孩子时所要跑的最短距离。转移的时候我们枚举上一次回家是在送完哪一个
阅读全文
摘要:第一次 AK abc,写篇题解记录一下。 原题传送门 分析 发现实际上是要求删去每个绿点之后会多出几个连通块。发现这跟割点的定义很像,于是考虑建图,在相邻的绿点之间连边。然后就只要知道每个点到底被包含在几个点双里。我们使用圆方树,此时就只需要统计每个点的度数就可以了。 代码 #include <io
阅读全文
摘要:原题传送门 提供一个常数巨大的暴力数据结构做法。 分析 看到这种极值类问题,可以先想一想二分。由于这题中可以击败的怪物一定是一段连续的前缀,所以考虑二分这段前缀的长度。 由于本题中一道护身符免掉的是一种类型的怪物所造成的总伤害,所以考虑单个怪物的伤害是没有意义的。接下来我们只考虑某一区间中同一类型的
阅读全文
摘要:原题链接 分析 观察要求的式子:\(\sum_{1 \leq i \lt j \leq N}f(S_i, S_j)\),发现可以拆成每一个集合 \(S_i\) 的贡献的和。那么我们考虑每一个集合 \(S_i\) 的贡献。 显然,对于每一个 \(S_i\) ,其贡献就是 \(\sum_{i \lt j
阅读全文

浙公网安备 33010602011771号