HNOI2018省队集训 Day6

HNOI2018省队集训 Day6

gift

想了一下午,最开始以为环数直接第一类斯特林数,然后发现有不合法的情况,容斥也没容斥出来。网上的题解也看不透,先鸽了

girls

直接容斥即可。

大概长这样:(好像有点抽象)

\[(\sum_i i*(n-1)*(n-2)-\sum_{(u,v)\in E} (u+v)*(n-2)\\+\sum_u\sum_{(u,v)\in E}\sum_{(u,v1)\in E,v1!=v} (u+v+v1)-三元环) \]

然后ABC处理出来换掉\(n-1,n-2\)

string

4种操作,强制在线

  1. 广义SAM上加点,记录每个n的las
  2. 不强制在线的话就是LCT子树查询$$endpos\in z$$ 的节点个数,强制在线记一下位置就好了
  3. 每次加边/删边维护len-fa.len
  4. 仍然是LCT子树查询,O(20)找一下最大值即可。

最开始写的是LCT维护子树和,然后写炸了,也调不出来,看题解

然后改成到根的链上加,这个就是access+splay+打tag

由于没有题解,后面几天的题就不做了。

posted @ 2020-06-02 15:46  lcyfrog  阅读(167)  评论(0编辑  收藏  举报