E题的单log做法

官方是双log的

子树内前驱可以离线

所有点最初权值为0 编号从小到大枚举 将其权值变为编号

枚举i之前先把子树i内权值最值求出来

然后变成单点修改 子树最大值问题 搞到dfs序上线段树即可

后继也类似

然后询问满足这个的点个数时候 L < ql <= x <= qr < R

因为保证L < x < R

可以转化成L < ql,qr < R的点个数

减去x < ql,qr < R的点个数 再减去x > qr, L<ql的个数

每种都可以转化成二维数点

全部评论
这个做法在验题时也有人提出了,拜谢
点赞 回复 分享
发布于 2024-03-01 21:46 香港

相关推荐

点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务