20230811巴蜀暑期集训测试总结

T1

考场打的是一个伪正解(没正确性的那种),评测的时候发现有 subtask 人都给我吓傻了,还好还有 \(50pts\)。就是不知道为什么 zxc 和我思路一样但是有 \(85\) pts。

这个正解确实有点难想,而且证明正确性也比较困难。

关于题解的正确性:

  • \(a\) 的逆元不是本身。那么如果 \(a^{-1}\) 在序列里,一定是走完了一个余数的周期,且 \(a^{-1}\) 在最后一个,因为如果后面再多一个就会是 \(1\),会重复。那么可以将序列的第 \(2\sim n\) 位反转此时 \(a_{-1}\) 作为新的 \(a\) 也会使之成立,不满足唯一解。

  • \(a\) 的逆元是本身,则 \(a\equiv a^{-1}(\bmod\;p)\),故 \(a^2\equiv 1(\bmod\;p)\)。如果 \(n\ge3\)\(f_2\) 会和 \(1\) 重复,故 \(n=2\),判掉就好了。

T2

考后仔细想了想,我的做法好像有一点漏洞,而且似乎有 subtask!再次吓个半死。又是还好,没有挂分(数据特殊一点或许会就被卡掉)。

二分需谨慎啊,我找一个单峰函数的极值,但是忽略了中间有平台的情况。还好没有被卡。(update in 《一些tricks》

T3

第一遍把题完全读错了,开打那叫一个激动啊。打到一半看了一眼题才反应过来。新的思路和正解完全符合(虽然有一些多余的东西),但是一直到最后都没有打出来——细节太多了。

发现一个规律:第一遍读错题的题我很少有打出来的。所以:好好读题!!!

还有一个小技巧,那种在一条直线上往前跳的题,一般不是倍增就是建图。(update in 《一些tricks》

T4

正解是线段树分治 + 可撤销并查集,其实考场也想到过,毕竟这种在操作序列里面取一段的题,很容易和线段树分治联系在一起。但就是不知道每一个操作会影响哪些左端点。

题解有一个非常巧妙的点,由于这道题的特殊性,可以一边处理每个点的答案,一边利用那个点的答案将操作加入到后面的时间轴上。(update in 《一些tricks》

posted @ 2023-08-11 21:02  牛肉爱吃dks  阅读(18)  评论(0编辑  收藏  举报