我写了线段树分治 + LCT,一遍过了样例,但是交上去疯狂 MLE。
我怀疑是 vector 的问题,压了半天空间,直到最后把所有 vector 改成静态数组他还是 MLE。
后来自己 generate 了一个小样例,拍出来 RE,用 fsanitize 发现是 LCT 的 Down 那里 fa[u] = u 然后死递归了,然后爆栈了。
把所有 LCT 操作输出来,发现是 cut 了一条不存在的边导致的,然后最后发现问题在撤销操作那里,没有按顺序倒着还原而是先 cut 所有边再 link 所有边导致的。
就这些,浪费了我人生中宝贵的一天半时间,记录下来警示后人。