Yet Another Inversions Problem

这道题目肯定是要把逆序对的式子列出来

考虑(i1,j1)(i2,j2)

i1=i2,那么只需要j1>j2,也就是序列q的逆序对数

i1i2,不妨设i2>i1,那么有pi12j1>pi22j2,即2j1j2>pi2pi1

我们枚举i2,先把i2固定

如果pi1>pi2,那么统计一下在(pi22j,pi22j+1]中的pi1个数,那么此时j1j2的范围就可以确定,利用乘法原理即可(一定要注意j1,j2是不会互相影响的)

update 2024.7.10

像这种分块讨论的思想(i1=i2表示在同一块,否则在不同块)可以记住,这里提示也是比较明显了

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