上午 8 点左右就到了机房,等开始的时候划水……
开题,先看 T1。CCF 的题目一般都很简洁,这次也不例外,很快明白了题意,但是没有很好的思路,就继续看题。
T2 很快有 \(O(n^3)\) 的想法,用 bitset 优化一下可以做到 \(O(n^2 \omega)\),大概能拿 30~40 的样子。
再看 T3,就一条式子,数论推导概率很大,先放一下。
然后回来看 T1。想到了莫队,但觉得时间上过不去,就想用一下莫队的思想,想了想开头和结尾多一个会有什么影响。发现如果提前预处理出每个块入栈时栈顶是什么,就可以用一些数据结构来维护。打加上调试,过去了一个多小时。搞定之后测了一下极限的大数据,发现加上 O2 还是很快的,觉得应该能 AC。
回来看 T2,脑子短路了一下忘记了 bitset 怎么写,幸好后来想起来了,大概花了 30 分钟。
最后想 T3,注意到 \(m\) 很小,而且只有 3 中情况,觉得可能是对每种情况进行一个分析。\(m=2\) 很简单,暴力也很好打。但 \(m=3\) 和 \(m=4\) 的数据没有思路,又想了一下就放弃了。检查了一下就去写作业了。
下午洛谷测民间数据,没挂分,挺好的。