动态排名

考虑一下正确性:在递归树上任意一点,任意一个查询操作,所有对其的影响一定会计入到树状数组中。分情况讨论。对于最开始的初始化操作,所有在[L,R]的操作肯定都在当前操作序列的最前面。对于后面的修改操作,如果是1标记,那么其对应的添加操作一定也在当前操作序列里面,而且在这个1操作前面,所以对于任意一个元素,既不会漏记,也不会重记(任意一个元素的操作序列一定是+1 -1 +1 -1 ... +1 -1 +1

举一个例子,假设当前值域区间为[5,10],树状数组为空。某一位数字的值是7,而且其所经过的修改为6387,那么其操作序列就是+1 -1 +1 -1 +1 -1 +1;对于当前操作序列,其包含一个子集为+1 -1 +1 -1 +1,可以知道7不会漏记

posted @   最爱丁珰  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2024-01-17 回文字串
2024-01-17 三个序列的最长公共子序列
2024-01-17 导弹拦截
2024-01-17 LIS问题的优化
2024-01-17 匹配统计
点击右上角即可分享
微信分享提示