2022-12-5 #4 泥泞步履踏碎泪泊 拥向光如抱薪赴火 妄想着永不分离的梦
——COP《光与影的对白》
调整了一下歌单,尝试听一些比较积极的歌调整心态。
今天既然没有心情做题,随便写一些之前做过的题吧。
11-30 日 vp:2022 ICPC Jinan。
15 J Skills
可以发现,一个技能一旦开始学,就不会停止学超过 天。
于是记录一下每个技能有没有开始学,以及上回合没有学的两个技能分别停了多少天即可。
一个实现技巧:记录上一次学习的技能编号 ,将三个技能重编号为 ,这样转移会很好写。
16 L Tree Distance
找支配对的技巧非常经典,序列上性质比较好,可以直接用单调栈找。
树上考虑使用点分治,对于每个越过分治中心 的支配对,我们在距离 较远的一个位置考虑其。可以发现,我们只需让 与距离 不超过 的点中前驱、后继配对即可满足要求。若与某个比前驱编号小的点 配对,将 与前驱配对不劣。
最后对这些支配对做一遍二维数点,复杂度 。
17 I Shortest Path
一个直觉是,当边数到达某个程度,我们存在一种固定的策略,重复利用某一条边。
一个比较松的上界是 ,对于长度大于其的路径,我们都可以找到路径上最小边 ,分别用 凑 固定奇偶性的最短路,然后重复走 。
那么暴力跑出边数较少的,后面枚举这条最小边,贡献就是一个一次函数,做个凸包就好了。
18 F Grid Points
套路地二分斜率,只需数点。
用斜率对应的直线把多边形切开,那么就是多边形整点计数。
一个经典的处理方法是每个点作一条垂直于 轴的垂线,这会变成 个直角梯形的加减,类欧几里得处理即可。
复杂度 。
稍微恢复了一下,差不多做得动题了。
vp:JSCPC2022。
19 E Playing Cards
联考考过这题,如果只看式子联想到组合意义是很难的。
组合意义:定义一次操作为将某个值减去 ,对 序列进行尽量少的操作,使得存在一个排列 满足 。
这是经典的贪心配对模型,使用类似 ABC254H 的技巧,每次考虑最大的数的匹配对象。
由于 值会变动,不妨从大到小枚举每个 ,考虑其匹配哪个。注意到若存在 ,选择其一定不劣于选择一个 的数(注意,这里必须带上减 ),所以若存在,我们用 set lower_bound 出最靠近 的数,否则直接选择剩余 中最大的。
复杂度 。
20 G GCD on Bipartite Graph
不会构造。
在 时,策略就是用 (素数)填满较小的集合。
不会证。
小的时候爆搜就好了。
没啥意义啊!!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下