- 博客(3)
- 收藏
- 关注
原创 CF2134A Painting With Two Colors 题解
给定 $n$ 个白色单元格,先将连续的 $a$ 个单元格涂成红色,再将连续的 $b$ 个单元格涂成蓝色(蓝色会覆盖红色)。判断是否存在涂色方案使得最终染色关于中心对称。如果 $b > a$ ,这是 $b$ 可以覆盖 $a$ ,所以只需要考虑 $b$ 的奇偶性。$b$ 的奇偶性与 $n$ 相同则输出 YES ,否则输出 NO。如果 $b$ 和 $a$ 的奇偶性都与 $n$ 相同,输出 YES。我们观察样例,发现题目中的对称显然与奇偶性有关。
2025-08-27 14:48:39
519
1
原创 【最小生成树】[USACO08OCT] Watering Hole G 题解
我们需要将问题转化为标准的最小生成树问题。比如点A和点B相连需要10元,但在点B开一口井只需要5元,此时我们会选择建一口新的井。这道题乍一看是最小生成树(MST)的模板题,但有一个关键点需要注意:每个田地可以选择。单独打一口井可能比连接更便宜(例如:A-B连接需要10元,但在B打井只需5元)(设为n+1)的连接。这样,问题就转化为在包含这个虚拟节点的图中求最小生成树。直接跑最小生成树可能不是最优解,因为打井可能比连接更便宜。需要注意到,我们跑krusakl时,视为有 n+1 个点。的操作转化为与一个“
2025-06-17 14:35:51
864
原创 P3372 【模板】线段树 1(区间加区间和)
每个叶子节点对应序列中的一个元素,非叶子节点对应其子节点的区间的合并信息。线段树的本质是一棵二叉树,它将一个长度为n的序列用一棵二叉树进行表示,每个节点对应序列中的一个区间。我们使用位运算(即 x<<1和x<<1|1)可以加快代码运行速度,看不懂的也可以写 x*2和x*2+1。第二行包含 n 个用空格分隔的整数,其中第 i个数字表示数列第 i 项的初始值。第一行包含两个整数 n, m,分别表示该数列数字的个数和操作的总个数。对于本题,我们维护每个区间的和。2 x y:输出区间 [x, y]内每个数的和。
2025-06-16 15:37:43
1652
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅