5/26 考试总结
时间安排
7:10--7:40 读题。
7:40--9:00 T1,首先有暴力的 \(2^nn^2\) 。尝试卡一卡,发现时空都不太够。
9:00--10:00 T2,写暴力。发现T1可以拆成两段路,于是可以继续卡。
10:00--11:20 T3,尝试构造,写了个分治,大概是 \(O(n\log n )\) ,然后发现还不如直接暴力的 \(O(n)\) 。
11:20--12:00 T2,大概可以分块,\(O(n\sqrt n\log V)\) 。
回顾反思
T1:
注意到可以取某个分界点将路分成两段,但是没有注意到随便取一个分界点足以统计到所有情况,导致复杂度多个 \(n\) 。
T2:
把每个类型看作函数,于是可以用线段树维护函数合并。
然后是分类讨论。
T3:
赛时在想貌似非常高级的分治构造。
正解就是直接从左到右依次构造,左边构造完了再构造右边。
对小规模打表,然后拼一块。
不失为一种方法,也不是第一次见到了。无脑但有效。

浙公网安备 33010602011771号