01 2021 档案
摘要:###链接 显然从位置 \(1\) 开始,找到第一个大于等于 \(s\) 的位置 \(pos\),设 \(val=\sum\limits_{i=1}^{pos} a_i\)。 若 \(val=s\) 直接输出即可,否则 \(a_{pos}\) 必然等于 \(2\),若 \(a_1=1\) 则 \(l
阅读全文
摘要:###链接 写一个 \(LCT\) 做法。 对于一个以 \(x\) 为根的 \(splay\) ,设 \(mx_x\) 为以 \(x\) 为根的子树中的答案,显然可以与 \(ls_x,rs_x\) 与虚子树中的 \(mx\) 取最大值。 显然只有经过 \(x\) 的链没有计算,我们考虑 \(x\)
阅读全文
摘要:###链接 调了好久。。。 我平常写平衡树时 \(push\) \(tag\) 的操作都习惯把 \(rev\) 数组清零,但在 \(LCT\) 中不行,因为 \(rev\) 储存了节点间的父子关系,直接清零会改变树的结构。 \(\frak{code}\) #include<bits/stdc++.h
阅读全文