日记
7.4
Codeforces Round 905 (Div. 3)
A
B
C
D
E
F
Codeforces Round 904 (Div. 2)
A
B
C
D
E
F
7.5
Codeforces Round 943 (Div. 3)
A
B
C
D
E
F
Codeforces Round 953 (Div. 2)
A
B
C
D
E
F
CF 1900
CF1624G
或意义下的最小生成树。
考虑拆位后从高到低位贪心,由于二进制的性质,因此可以枚举舍弃每一位对应的边后图是否仍然联通,如若联通则舍弃相对应的边一定是最优的。并查集判断即可。
https://codeforces.com/contest/1624/submission/268905549
7.6
AtCoder Beginner Contest 361
A
B
判断两个三面平行于坐标平面的立方体是否有交。
判断 轴范围, 轴范围, 轴范围是否均有交集即可。
C
D
有 个格子,前 个格子中每个格子有 或 ,最后两个为空,每次挪动相邻两个字符至空格内,请问由 变换至 的最少次数, 。
范围较小考虑状压,暴力做三进制,记录每个位置分别是什么,复杂度 ,考虑到两个空格始终相邻,可简化状态,状态中仅包含长度为 的字符串和空格的位置即可,求最小次数只需要广搜即可。时空复杂度均为
https://atcoder.jp/contests/abc361/submissions/55287530
E
求从任意一点起始遍历整棵树所经过的最小边权和。
考虑最优路径,从某个点出发到某个叶子节点停止,反证法容易证明。那么仅需换根处理即可。 表示遍历以 为根的子树并回到 的和, 表示遍历以 的父亲为根去除掉子树 的整个树的最小边权和, 加和后减去以 为根的最长链即可。以上均可通过两次 DFS 完成。
https://atcoder.jp/contests/abc361/submissions/55300868
F
问 以内的整数有多少能表示为 , 的形式。
发现三次方以上的数极少,可以暴力枚举,对于完全平方, 以内有 个,检测上述数字中是否含有完全平方即可。
7.7
地球online
科目一94分。
Codeforces Round #956 (Div. 2)
A
B
矩形内部只有 0、1、2 三种数,每次操作可将一组对角的数加 1 后对 3 取余,另一组对角加 2 对 3 取余,问能否将 S 操作为 T 。
考虑每次操作不改变每行和每列之和对 3 取余的余数,因此依次判断每行每列是否相同,这是必要的,充分性待证明。
C
爱丽丝、鲍勃和查理想分享一个切成 块的长方形蛋糕。每个人认为每块蛋糕的价值都不同。爱丽丝认为 这一块的价值是 ,鲍勃认为是 ,而查理认为是 。所有 、所有 和所有 的总和是一样的,都等于 。考虑到每个人每块蛋糕的值,需要给每个人一块连续的蛋糕。换句话说,对于 Alice、Bob 和 Charlie 来说,这些子数组左端和右端的索引(给每个人的蛋糕片)可以分别表示为 、 和 。分割需要满足以下约束条件:没有一个棋子被分配给多人,即 、 和 中没有两个子数组相交。
仅需枚举顺序后,在第一段满足条件的情况下,指针定位第二段的最左位置,在判断第三段是否合法即可。考场上没想好直接写了个二分。
https://codeforces.com/contest/1983/submission/269255496
D
给定长度为 的两个不同正整数数组 和 ,我们希望使这两个数组相同。长度为 的两个数组 和 在所有的 中都相同。一次操作,可以在 中选择索引 和 ,并交换 和 ,然后在 中选择 和 ,使得 ,并交换 和 。有可能使两个数组相同吗?
打表后发现是判断逆序对是否为偶数,证明待补充。
E
F
G
7.8
Codeforces Round 950 (Div. 3)
CF
CF1509C
CF1517D
7.9
Educational Codeforces Round 167 (Rated for Div. 2)
7.10
Codeforces Round 955 (Div. 2, with prizes from NEAR!)
https://codeforces.com/contest/1982
A
考虑转化为棋盘格上走路,本质上是从 走到 且不能跨越对角线,判断两个点是否在两侧即可。
B
大暴力显然无法通过,一个比较显然的优化是一次直接加到能被 整除的数,如果操作足够多,经过若干次操作后一定会出现 ,因此会从 到 循环,直接取余即可,时间复杂度不会证明。但实测跑得飞快。
C
考虑 为前 张牌最多赢几次,暴力转移即为对于所有 的 , 。到这里已经可以直接二分+线段树在 的时间内解决了。但是考虑 的性质,其单调不降,因此只需维护一个指针,即最大的满足 的 即可在 的复杂度内解决。
D
考虑枚举每一个左上角的位置,其能改变的两种数之差的量必然为子矩阵内 0/1 个数差的倍数,因此预处理出所有子矩阵 0/1 个数差,根据裴蜀定理,有解等价于总差为所有个数差的 。
7.11
地球online
领毕业证,出去吃饭,打球。下回了几百年没有玩的吃鸡结果落地成盒了。
7.12
地球online
早上五点半起床去驾校学车,VR 太难玩了,曲线转弯短短不到一百米压了 96 次线,古希腊掌管驾驶技术的神。
codeforces Round 951 (Div. 2)
https://codeforces.com/contest/1979
C
考虑到对于每个 都需要满足 ,那直接看 是否严格小于 1 即可,大于等于 1 则无解,小于 1 直接令 为所有 k 的 lcm。
7.13
地球online
玩 VR 太困了睡着了,被教练当场抓包。侧方停车直接停马路牙子上了,我实在是太强大了。
AtCoder Beginner Contest 362
居然有两个板子。。。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】