2023.8-2023.9 水题记录
几乎全是 CF 和 AT /oh
1. CF1856D More Wrong#
这场 CF 场上只写出来 ABD (主要卡 B 的证明上了), 什么水平?
90% 交互 = binary search (暴论)
2. CF1851G Vlad and the Mountains#
是我没见过的操作. 学到了.
3. CF1856C To Become Max#
考试的时候没看. 简单二分.
4. CF1270G Subset with Zero Sum#
简单题, 感觉条件提示的很明显啊.
5. P9533 [YsOI2023] 区间翻转区间异或和#
简单小证明. 粉兔在 CF 讨论里面说这题被 ChatGPT 做出来了 /oh
6. AT_arc120_c [ARC120C] Swaps 2#
什么 MO 操作. 你需要知道邻项交换次数=逆序对数.
7. CF1034A Enlarge GCD#
简单数学.
8. P9323 [EGOI2022] Toy Design / 玩具设计#
90% 交互 = binary search (反复强调)
9. AT_abc312_f [ABC312F] Cans and Openers#
枚举第二种就做完了, 然后调了一年.
10. AT_agc061_b [AGC061B] Summation By Construction#
简单构造, 但是创死了一车人, 怎么回事呢?
本人题解
11. CF1144G Two Merged Sequences#
有趣小结论. 要我上的话直接保证有解然后卡 空间 /oh
12. AT_abc191_f [ABC191F] GCD or MIN#
简单数学.
13. CF920E Connected Components?#
取度数最大的点就完事了.
为什么翻译不说排序输出啊?
14. CF1458C Latin Square#
关键在于整体地看 这个东西, 操作就是某一维增量和交换维度, 可以 完成.
15. CF1858E2 Rollbacks (Hard Version)#
场上写的可持久化线段树, 喜提 MLE /oh
数颜色通常可以记一下每种颜色第一次出现的位置, 这样减操作直接减长度, 查询直接前缀和. 为了方便维护可以对每个颜色开个 set 记录位置.
末尾加的时候注意一点细节, 别直接把要加位置的给覆盖掉了, 要存起来方便回滚.
回滚操作用个 stack 存一下就行了.
16. P6960 [NEERC2017] Interactive Sort#
这题很没脑子啊, 保证随机, 然后喜闻乐见地 binary search.
17. AT_arc122_e [ARC122E] Increasing LCMs#
有趣构造.
大概的想法是, 考虑一个数能放在最后的充要条件. 然后就和这个数没关系了.
根据那个条件可以证明能放在最后的数不会减少.
18. AT_agc003_e [AGC003E] Sequential operations on Sequence#
好题不难.
首先有意义的操作一定单增. 每个操作可以拆成循环和余数两部分, 最后发现贡献形状类似于一棵树, 从上往下算贡献即可.
不过不需要存树. 余数的部分可以直接二分到对应位置, 这样处理是 级别的.
最后整个差分, 做完了!
19. CF1854A2 Dual (Hard Version)#
这场太困睡着了, 没打.
容易想到把符号全整成一样的, 然后前缀/后缀和, 赢!
简单的想法是用绝对值最大的做, 但是次数太多. 另一种想法是, 先把一个数倍增到足够大再给符号相反的加上. 平衡两种操作恰能卡满.
20. CF1849E Max to the Right of Min#
简单题, 为什么我场上没做出来呢?
这种东西很明显能做的操作, 一个是单调栈, 一个是扫描线. 然后就没什么难的了.
21. AT_agc063_b [AGC063B] Insert 1, 2, 3, ...#
知道怎么判断可生成但是没想出来, 什么水平?
22. AT_agc063_c [AGC063C] Add Mod Operations#
被 Ad-hoc 爆杀.
23. CF1859F Teleportation in Byteland#
分讨题, 没做出来.
24. CF1670E Hemose on the Tree#
25. CF1827E Bus Routes#
需要注意到的关键性质是, 我们只需要判断叶子结点是否两两可达.
对每个叶子结点求出来它能通过一条链到达的深度最小的点.
这时求出来的点一定都在一条直链上, 否则显然不能通过两条路径到达.
26. CF1856E2 PermuTree (hard version)#
喜报: 校内模拟考这题, ans+=i*(sum-i);
只对 ans 开 long long, 后面没开, 88->56.
容易转化成对每个结点, 将子树的大小分成差尽量小的两部分, 直接 01 背包 + bitset 就获得了 的优秀做法(?
注意到不同的数只有 种, 二进制拆分后就有单次 , 实际上因为一些神秘原因并没有那个 log.
但是对整棵树这样做还是会寄. 发现重子树如果大于整体一半那么直接把重子树单独分出来即可.
否则所有子树大小都不超过原来的一半, 此时递归时间复杂度正确. 因为一些神秘原因还是没有 log.
别人写的时间复杂度证明
27. AT_agc018_f [AGC018F] Two Trees#
经典好题.
28. AT_agc064_b [AGC064B] Red and Blue Spanning Tree#
没脑子题, 但是我赛时没做出来!
用边的方向表示归属关系. 先把双向边加完了, 然后每次加连向合法连通块的边.
29. CF1209F Koala and Notebook#
30. CF1854B Earn or Unlock#
31. CF319E Ping-Pong#
线段树维护线段/oh
难点在于并查集连边.
32. P5283 [十二省联考 2019] 异或粽子#
把顺序限制给扬了, 然后答案取在 . 对角线全是 , 没影响.
这是 P1631 序列合并, 多一个在 01-Trie 上找异或第 大.
33. AT_agc062_c [AGC062C] Mex of Subset Sum#
34. CF888G Xor-MST#
35. CF1849F XOR Partition#
36. CF1439B Graph Subset Problem#
37. CF1473E Minimum Path#
38. CF1583F Defender of Childhood Dreams#
39. AT_abc302_h [ABC302Ex] Ball Collector#
链上的是 ARC111B. 二元关系考虑连边, 并查集随便维护.
上树直接来个可撤销就完事了.
40. CF903G Yet Another Maxflow Problem#
这个题应该是最近掉紫的.
最大流没法做, 转成最小割.
41. CF516D Drazil and Morning Exercise#
说句闲话: 40 和 41 都是远古模拟赛放 T4 搞心态的. 不过也没有那么不可做!
42. CF1827D Two Centroids#
43. CF1827B2 Range Sorting (Hard Version)#
作者:pjykk
出处:https://www.cnblogs.com/pjykk/p/17642841.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现