求问一道可持久化数据结构的题该怎么解

题目总版

~~LCT~~
by OIforJoy @ 2020-05-19 17:12:52


@[abcdefg123456](/user/63964) 求教
by FZzzz @ 2020-05-19 17:18:17


@[FZzzz](/user/174045) 就是根据版本的生成关系建树,然后打上各种加法乘法之类的tag记录生成该点的操作,也存上从最近的修改操作生成的祖先开始到该节点的乘法操作值乘积和加上的常数系数,再搞一堆孤点备用,123都是连上一个孤点,4就变成了单纯的子树操作(刚发现基于Splay的树剖也可以)总之极为麻烦...
by OIforJoy @ 2020-05-19 17:32:18


@[abcdefg123456](/user/63964) 这样的话感觉标记不好处理吧?
by FZzzz @ 2020-05-19 17:37:31


@[FZzzz](/user/174045) 可以处理但是极其...毒瘤 只涉及到对一个子树内的节点存储的量进行线性变换,分类讨论删除操作的点是否由赋值产生,如果是,统一将字数内维护的变换关系的自变量按照其父节点维护的变换关系进行变换这样处理系数;如果不是,可以注意到拿节点和某个祖先的变换进行比较可以知道路径上的变换的等价情况,直接按操作的逆运算替换自变量处理参数即可.
by OIforJoy @ 2020-05-19 17:46:58


@[abcdefg123456](/user/63964) 这……好吧谢谢
by FZzzz @ 2020-05-19 17:51:02


@[abcdefg123456](/user/63964) 谢谢。我的姿势水平还是有待提高。
by qwerty365 @ 2020-05-20 11:30:09


|