HEOI2020 AFOOO记

DAY -4 ~ DAY 0
突然得知进队了。
然后突然又得知退役了。
在进队和退役之间反复横跳。
所以最后还是要去石二考试。

DAY 1
开场发现T1题面挺复杂的,但是感觉D1T1放个数据结构题应该不会太难,直接跳了。
T2是个推式子的题,看起来就很像某道用二项式定理来做的题。
看到一个很恶心的 \(i^k\) 用斯特林数转一下下降幂,然后用一个套路组合恒等式就解决了。
T3没一点思路,所以回去看T1。
发现可以二分一下蓝 \(\leq\) 红的最后一个位置,然后找一下红的后继取较优解就好了。
\(log^2\) 的做法并不难想,线段树上二分就一个 \(log\) 了。
跑一手极限数据,发现有点慢,而且主要是 set 很慢。
为了卡常写个 zkw 线段树,然后在线段树上找二分后继就好了。
然后挂上俩对拍去看了一年T3,口胡了一个 \(m=2\) 的做法打不出来。
只打了一个 15 分的部分分可能还伪掉了,然后就等死到考试结束。
下午没有手机所以很自闭,所以就和一些同学打了会牌,聊了一会这样子。

DAY 2
看起来T1就很可做,所以直接跳了。
T2是个似乎不难的数据结构题,俩 log 的做法似乎有很多。
感觉这个数据范围能放两个 log 过,利用 \(i\oplus i+1\) 的性质,口胡了一个 \(dsu on tree\)+桶 小常数俩 log 做法,所以也跳了。
T3大概就枚举每条边,然后莫比乌斯反演算一算方案数。
容易想到只有边权的约数处的函数值会改变,所以枚举一下约数重新计算就完了。
随机数据肯定没问题,造了个比较极限的数据跑了10s+,感觉完戏。
想了想用代数余子式,快打出来的时候发现这玩意不是树形图,所以要修改两行两列,那个玩意并不能用。
此时已经过去俩小时了,赶紧回去码 T2,极限数据只跑1.2s,感觉挺稳的。
回去看 T1 果然可做,其实考虑跨过每个点造成的贡献,然后特判一下是特殊联系的终点就好了。
根据枚举集合过程中的 \(\sum \limits_{s=0}^{2^m-1}|s \oplus s+1|=O(2^m)\) 这个性质,随便做做就可以 \(O(m*2^m)\) 时间,\(O(2^m)\) 空间了,极限数据 2.2s,感觉评测机应该问题不大。
拍上两个题回去看T3,发现有个很水的部分分还没拿到,就加了个双模哈希记忆化边集,结果就埋下了卡不掉的伏笔。
然后挂上三个拍继续等死。最后十分钟想起来加个 register,结果T1当场变成了 1.4s,就很开心。
聊了一路回到衡水,喜提不能返校。
去医院兜了一圈还没做核酸检测,吃了顿饭就又能回学校了,然后就开始颓废了。

posted @ 2020-06-23 10:11  skyh  阅读(600)  评论(16编辑  收藏  举报