Educational Codeforces Round 146 (Rated for Div. 2)
1|0Preface
补题ing
值得一提的时补这场的时候先是遇上了CF的12小时大维护,后面又遇到了评测机崩了测不了也是有点有意思的说
2|0A. Coins
傻逼题,首先考虑时一定有解,否则若则由裴蜀定理知此时一定无解
否则必为奇数,我们令,则只要检验的大小关系即可
3|0B. Long Legs
一眼题,首先考虑枚举最后的值,则贪心地肯定把步数长的跳放在最后
因此容易列出当前答案的式子其实就是,只要求其最小值即可
考虑到如果我们不考虑上取整,把定义域改成实数域,则这个式子就是个典型的对勾函数,在时取得最小值
因此我们知道当枚举的到这个级别的时候就差不多能看出答案了,这里我结合数据组数选择枚举到即可通过
4|0C. Search in Parallel
傻逼贪心题,首先给从大到小排序后,先处理掉大的一定最优,然后放在哪里显然也就是比较一下选代价小的那个
5|0D. Balancing Weapons
刚开始想了个算法码了100多行假了,后来发现是我想复杂了
首先我们肯定可以让最后每个数变成,因此答案为的情况是一定可得的
否则我们考虑至少存在一个点不会改变,我们枚举不改变的点,不难发现此时其它点要变一定会变成距离最近的那两个数
因此换句话说此时所有取值的可能其实是级别的,我们把所有这些可能的取值排个序,然后two pointers
找出所有极大的合法区间并验证即可
具体实现可以看代码,总复杂度
6|0E. Chain Chips
真是好久没写过DDP(动态DP)的题目了,上次见到可能还是在NOIP2018的D2T3了(乐)
首先吐槽一下做这题的时候由于CF崩了就找了个简述的题面,然后里面说的是个点条边而没说是链,所以刚开始一直在想树上的做法,结果后来没想法再一看题目发现是链
不过其实两者的转化都一样,都是最小权值边覆盖问题,即我们选出若干条边,使得每个点都会被至少一条边覆盖,然后找一种总权值和最小的方案
证明也很简单,如果给出了一种所述的方案,显然很容易构造一组解(通过只交换相邻的元素即可)
而反过来如果存在某个点没有任何一条边覆盖了它,则它一定不可能换成别的芯片,因此原来结论成立
那么我们很容易想到一个naive的DP,设表示选完了前条边,其中第条边选/不选的最小代价和,则显然有转移:
然后我们把这个转移写成DDP的矩阵形式有:
然后用线段树维护一下即可,总复杂度
不过要注意一个地方,在维护这种最值的转移矩阵时要写成右乘的形式不然会出问题,调了样例半天才发现
如果一定要写成用列向量左乘转移矩阵的话就要从右边转移到左边,这点一定要注意,在序列上还好,在树剖的时候就很容易搞错顺序
7|0F. Communication Towers
我已经属于变成那种连线段树分治这种东西的名字都想不起来的老年菜鸡了,只能看看别人的题解了
首先我们发现如果对于接收频率进行线段树分治,那么每条边只会出现在个线段树节点上
一个naive的想法就是用可撤销并查集维护到的联通块,但是这样在叶子节点统计答案的时候可能会退化成的
不过有一种好方法就是先在叶子节点打一个标记,然后在栈中撤销的时候把这个标记传回去即可
但是转念一想又有一个问题,如果我们只是简单地用bool
类型的数组来维护标记,那么在涉及到不同的叶子节点带来的影响时可能会搞混掉
而且这个题也没法简单地用时间戳来解决这个问题,因为我们不能进行和赋值有关的操作,不然在可能会用一个叶子的信息覆盖掉另一个叶子的信息
那么改怎么处理呢,有一个很trick性的做法就是打差分标记,具体实现可以看代码,我只能说是惊为天人
那么这题就做完了,用按秩合并维护带撤销并查集,总复杂度
8|0Postscript
发现Edu的场题目其实很不错的说,而且总能学到点新trick,下次有机会要积极打一下的说
__EOF__

本文链接:https://www.cnblogs.com/cjjsb/p/17316482.html
关于博主:复活的ACM新生,目前爱好仅剩Gal/HBR/雀魂/单机/OSU
版权声明:转载请注明出处
声援博主:欢迎加QQ:2649020702来DD我
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2018-04-13 Luogu P4322 [JSOI2016]最佳团体