可持续化线段树的区间加减。
如果用lazy标记的化,发现两个版本的线段树共用的节点不能修改值。
这时候标记永久化就上场了。
标记永久化既不需要下传标记,也不需要通过子节点更新自己。
- 对于更新,更新一路上的值。然后在最底层完全覆盖的节点上打上标记。
- 对于查询,更新一路的标记,最后加上最底层的值。
注意多思考细节就好了。
代码
1 |
|
可持续化线段树的区间加减。
如果用lazy标记的化,发现两个版本的线段树共用的节点不能修改值。
这时候标记永久化就上场了。
标记永久化既不需要下传标记,也不需要通过子节点更新自己。
注意多思考细节就好了。
1 |
|