2022-10-15

chenhx-xcpc / 2024-11-13 / 原文

今天做 cmb 花费重金从 hwy 那里买下的题,质量不错?

T1 > noip T1 ,看着题面想了将近半个钟发现不会做,然后再读一遍题发现是 \(n\) 个点, \(n\) 条边,这不基环树吗,降智了,不过对于签到题而言码量还是有点太大了

T2 <= noip T2 ,看到计数题,大喜。然后就是一眼就会 \(O(26^2\cdot n)\) 的,但是好像要弄的是 \(O(26\cdot n)\) 的,然后速速拿上纸巾到厕所喷射,然后快速糊了一种容斥做法,就是 cnt[aabcab]=cnt[aab_ab]-cnt[aabaab]-cnt[aabbab],因为你为了去掉一个 \(O(26)\) ,唯一的做法是考虑去掉一种字母,然后容斥可以做到,然后再推一下式子,发现可以使用一个前缀和来完成。
赛后发现好像不太用容斥,好像是自己脑抽了...

T3 不好评价,题解的方法挺妙的,但是被 bitset 给碾过去了,不知是不是出题人的疏忽?
记录一下题解的做法:
就是由于我的运算符中是没有括号的,所以我可以通过或运算把整个表达式分段,然后就是只要只要存在一段是满足的即可判为真,然后这个过程就是可以像高维前缀和一样弄,时间复杂度在 \(O(3^b)\) 左右