2月杂题
叠甲:
本博文中出现所谓难度评价大部分为作者自己根据自己的水平以及其评分所认定的难度,含有较大主观性,仅供参考,切勿当真。
作者水平有限,可能会收录很傻逼/一眼的题目,只是一个类似总结的东西,还请多多谅解。
怎么会有人 3 月了还在填 2 月的坑啊()。
C0181 【0128 C组】模拟测试
D 【0128 C组】多
占坑。(神题,可能永远不会填,放个
C0184 【0204 C组】模拟测试
D 【1127 C组】树
占坑。(难写,可能暂时不会填,等我调出来/dk)
AtCoder Beginner Contest 289
F - Teleporter Takahashi
题意:给你一个坐标
首先横纵坐标互不影响,可以分开考虑。思考变换对
即两次变换可以看做是将坐标加上一个偶数。同时,由于
C0187 【0210 C组】模拟测试
C 【1204 C组】雾雨魔理沙
首先判掉原本就是回文串和重排后也构不成回文串的情况。有一个显而易见的性质:假如区间
如果有一个最小区间为
其中
Educational Codeforces Round 143 (Rated for Div. 2)
D. Triangle Coloring
题意:给定
发现一个三角形要么两个同色一个异色,要么全部同色。但是我们可以证明前者更优:假如有两个三角形分别涂了 3 个红色和 3 个蓝色,那我们可以把他们改成 2 红 1 蓝和 1 红 2 蓝,这样一定更优。那么每个三角形的贡献就是权值最大的两条边。计数,乘系数。
E. Explosions?
题意:有一个长度为
F. Blocking Chips
题意:有一颗大小为
发现直接做不出来,考虑二分答案转化为判定性问题。自下而上操作每个点。每个点移动的最优策略是优先向子树走,否则向父亲移动直到当前点可以向其子树移动。记录三个数组
G. Removal Sequences
题意:给定一个图,每个点有一个权值
神题。
首先构造一组可以全部删除的方案。记录他们被删除的次序。这个可以用拓扑排序。然后正难则反,找到所有不合法的点对。
有一个性质:一个点对
充分性:
必要性:
AtCoder Beginner Contest 290
E - Make it Palindrome
题意:给一个长度为
正难则反。先求出总次数,在减去相同的数贡献的次数。对于长为
upd in 2023.2.20:原来的做法时间复杂度瓶颈在于排序的
F - Maximum Diameter
题意:定义序列
首先
解释一下:我们先假定所有方案的直径长度都为
G - Edge Elimination
题意:有一棵深度为
C0191 【0221 C组】模拟测试
B 【1218 C组】跳房子
神构造。
发现
正确性显然(笑。
C0190 【0217 C组】模拟测试
C 【1211 C组】子图
占坑。
C0194 【0225 C组】模拟测试
B 【0225 C组】集合问题
首先很显然我们只会选至多两个区间,因为选更多的话
当
C 【0225 C组】求代价
为了方便叙述,我们把问题转化为数轴上黑白的点,连边代价就是距离。每个点至少连一条边的限制并不好满足,考虑转化成至多连一条边。先找到每个点最近的异色的点,距离记作
显然贪心是错的,考虑加入类似反悔的操作。转化后,新问题就是两个点连边的代价就是
把数轴上的点按颜色分成极长的段,可以证明两段之间连边一定是前一段的后缀与当前段的前缀对应相连最优,就是这样:
那么这就是一个简单的线性 DP。
D 【0225 C组】排列问题
占坑。现在还不会。
C0195 【0228 C组】模拟测试
D 【1225 C组】字典树
定义
首先可以得到答案
然后,我们有以下式子:
解释一下:第一个式子中分母表示
同时,发现上式与
解释一下:分子表示总方案数,分母是除掉同种数字的顺序。
这样我们就得到了一个时间复杂度为
考虑交换答案中求和的顺序,先枚举
更具体地,我们可以考虑在枚举当前
Codeforces Round 848 (Div. 2)
D. Flexible String Revisit
题意:给两个 01 串
法 1:定义
发现这个东西要高斯消元,但是系数都在一条对角线上,故单次消元为
法 1.5:令
法 2:定义
可以直接转移。令
E. The Tree Has Fallen!
前置知识:线性基。
类似做法指路 D 【1012 D组】烤乐滋的树 。
题意:给定一棵有点权的无根树,每次询问求以
根据以 1 为根时点
-
如果
在 的子树外,那么以 为根时 的子树不变; -
如果
,那么以 为根时 的子树就是整棵树; -
如果
在 的子树内,记 是 的祖先中是 的儿子的那个,那么以 为根时 的子树就是 的子树内除了 的子树内的点。所以维护 dfs 序前缀后缀线性基,子树内线性基,每次找 直接像求 一样跳就行了。
F. Maximizing Root
前置知识(其实不需要,只是顺便学习):Binary GCD。
题意:给你一棵以 1 为根有点权的树,可以操作至多
占坑。看这个。
AtCoder Beginner Contest 291
G - OR Sum
前置知识:卷积。
首先每位互不影响,可以分开考虑。然后假设已经转完,
更具体的,atcoder 自带的卷积就是
Ex - Balanced Tree
前置知识:点分治。
题意:给定一棵树
-
对于点对
,它们在 上的 在 上的位置是它们的路径上; -
对于点
,它在 上的子树大小的两倍不超过他的父亲在 上的子树大小。
占坑。
Educational Codeforces Round 144 (Rated for Div. 2)
E. Colored Subgraphs
题意:给你一棵无根树,给每个点染色,使得对于所有同色点
只会
题意可以转化为每次染一条从叶子往上的一条链。强制钦定根节点为 1,考虑二分答案,问题转化为了判断整棵树能不能分成向上的长度不超过
对于不合法的情况,记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现