• [ABC145F] Laminate 题解

    想必大家都会积木大赛。 若修改 ,考虑如何让它带来的贡献最小。根据积木大赛的结论,只需让 ,这个位置就不会带来任何的贡献,可以认为我们删除了第 个位置。显然,,总存在 满足以上条件。 那么问题就变成了,原本有 个位置,可以删除最多 个位置,求最小答案。于是自然而然地想到了 DP。 设 表示现在在第 个位置,删除了 个位置,上一个没有被删除的位置是 的最小答案。转移方程: 时...
  • [ARC197D] Ancestor Relation 题解

    好题啊好题。记 表示矩阵的第 行的内容(用 bitset 维护)。 考虑什么时候有 。因为与孩子有关系的节点一定与祖先有关系,但与祖先有关系的节点不一定与孩子有关系。所以有 或 ,前者对应 是 的祖先,后者则对应 是 的祖先。容易证明这是一个充要条件,那么若 ,则一定不存在 与 。 接下来考虑一种特殊情况:,此时 在一条没有任何分岔的一条“链”上,那么这条链上的节点的位置就...
  • [ARC196A] Adjacent Delete 题解

    假设 是偶数。如果我们忽略删除相邻数的条件,即可以任选两个数相减,那么答案应该是前 大的数(记作“较大数”)的和减去前 小的数(记作“较小数”)的和。 容易发现,当我们只能选相邻的数相减时,依然可以达到这个答案,因为在任意时刻,总存在至少一对较大数与较小数相邻。 当 是奇数,那么一定有一个元素不被选,且这个元素一定在奇数位,这样才能把数组分成长度为偶数的两段。枚举不被选的位置,用对顶...
  • [ABC400F] Happy Birthday! 3 题解

    考虑正难则反。问题转化为: 一个环上有 个物品,颜色分别为 ,每次操作选择两个数 使得 ,将 中的每个物品的颜色都设为 。(下文将这种操作称为“漂白”。)一次操作的代价为 。求将整个环漂白的最小总代价。 先断环为链。设 表示将 漂白的最小代价,那么显然有 。 设 表示使 能够漂白的最小代价,那么显然有 。当 时,有 。 答案即为 。
  • [CF2086E] Zebra-like Numbers 题解

    确简单的啊,可是自己就是想不到。 考虑计算一个数的斑马值。贪心地,尽量选大的斑马数减即可。 考虑 DP,设 表示 中斑马值为 的数的个数。那么显然有 ,其中 是不大于 的最大的斑马数。具体地, 表示 中斑马值为 的数的个数, 表示 中斑马值为 的数的个数。 记搜即可。
  • 联合省选 2025 游记

    感谢 @fan_xiaoyi 提供的部分文本故事。 作者是初二蒟蒻,实力有限,不喜勿喷。 在遥远的傻子谷,生长着一棵特殊的树,名为二叉树。它以结构规则、枝繁叶茂而闻名,被谷民们视为神树,而神树也庇佑着这片土地。 二叉树所结的果实被称为提姆,其颜色从红到黑,颜色越深,价值越高。此外,还存在一种灰色提姆,这类果实尚未成熟,在生长过程中会随机变化,无法预测其最终状态。每颗提姆都包含 100 ...
  • P6808 Candies 题解

    鲜花校内模拟赛T3,赛时想到了正解的 ,所以就得了 分…… 赛后 T 了若干发之后终于过了。 本文提供一种非回退背包的解法。 在下文中,记 。 Solution 1假设我们修改 ,设用其他数拼出的方案数为 ,那么当 足够大时,有 。所以问题就转化到了求 与 。 考虑枚举 ,并对于每个 进行 DP 计算 。求出最大值与最大值位置(即 )后,需要求 。 设 表示是否能凑出 。很容易...
  • NOIP + 游记(流水帐)

    为什么是NOIP + 游记?因为其实是 NOIP游记 和 环球中心游记 。 Warning本文纯流水帐,想了解题目做法的请移步。 Day -34考 CSP-S 了,炸掉了。赛时估分只有120-160pts。 Day -26出分了,170pts。 Day -11出分数线了,SC180pts呜呜呜。 Day -??老师给我们报了NOIP。 Day -??NOIP线出来了,165pts,好险。 D...
  • [ARC050C] LCM 111 题解

    一句话题解转化两个大数的 ,再用倍增求答案。 题意题目 给你 ,其中 ,让你求 个 拼接起来的数和 个 拼接起来的数的最小公倍数。 思路我们构造一个函数 表示 个 拼接起来,用数学语言表述就是: 同时又有 ,那么我们要求的就转化成了: 因为 与 都比较好求,所以此时的问题就转移到了怎么求 上来。 我们尝试感性理解一下。可以发现: 此时答案...
  • [COCI 2023/2024 #2] Zatopljenje 题解

    闲话考前集训,每日一练做到的题,我写挂了五次。自己想到分块的做法,看题解区没有,于是来发一篇。 思路我们注意到,当海水高度为 时,区间 的小岛的个数可以这么计算: 所以第 个位置产生贡献当且仅当 ,考虑分块并预处理出每个块的答案。由于 ,所以要离散化。时间复杂度 ,虽然比不上线段树或树状数组,但是思路还是比较好想的。 具体细节见代码实现。 Tip : 不要开long long,...
1234