树状数组 + 离散化 求逆序对数量
AcWing 788. 逆序对的数量
#include
using namespace std;
typedef long long ll;
const int N = 1e5 + 10;
int nums[N], tr[N];
vector
int Idx(int x){
return lower_bound(dc.begin(), dc.end(), x) - dc.begin() + 1; //返回索引
}
int lowbit(int x){
return x & -x;
}
void add(int x){
for(; x < N; x += lowbit(x)) ++tr[x];
}
ll ask(int x) // 1~x的和
{
ll res = 0;
for(; x; x -=
共有 0 条评论