集训 0620

Posted CHADLZX

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集训 0620相关的知识,希望对你有一定的参考价值。

T1:

要求你在一颗树上做背包,并且遍历这棵树的每个节点,内存要求不能超过20M。

嗯...很坑,在写了分块之后,我发现被卡了,O2下1.2秒正好,非O2下3秒左右,时限1.7秒,哔了狗了。

能得60也是托了数据过水的洪福。

正解:这题本质是要求你确定一条树上的欧拉路径,并且使每次同时维护的未遍历的链接口最少。

初步观察发现,如果一条长路一条短路,先走短路比先走长路优,因为长路上并接很多链接口的可能性很大。

然后可以判断初步策略是每次走siz(dep也可以?)域最小的子树,经过一番调试,发现真的如此。然后就写出来了。

证明的话,应该可以像证明树链剖分那样证明.....吧。

T2:

线段树题目,批量升级的套路,我有个地方打残了,结果只混了暴力分,稍改两个地方就是正解的说....

没什么可说的,只需要注意线段树的标记维护即可。

T3:

题答。

简单暴力生成树随便跑了下贪心就过了94,唉...

 

不得不说数据过水了。

以上是关于集训 0620的主要内容,如果未能解决你的问题,请参考以下文章

CSU OJ2151 集训难度

「集训」2020集训记录

9月半集训总结 & 10月集训规划

2021软件创新实验室暑假集训总结篇

2021软件创新实验室暑假集训总结篇

2021软件创新实验室暑假集训SpringBoot框架