#include<bits/stdc++.h>
using namespace std;
const int MAXN=5000010;
#define lowbit(x) (x&(-x))
#define int long long
int n,m;
int ans=0;
int a[MAXN],tree[MAXN];
int add(int x,int k){
for(int i=x;i<=n;i+=lowbit(i)){
tree[i]+=k;
}
}
int ask(int x){
int sum=0;
for(int i=x;i;i-=lowbit(i)){
sum+=tree[i];
}
return sum;
}int p[MAXN];
bool cmp(int x,int y){
return a[x]<a[y];
}
//
//int search(int L,int R){
// for(int i=L-1;i;i-=lowbit(i)){
// ans-=tree[i];
// }
// for(int i=R;i;i-=lowbit(i)){
// ans+=tree[i];
// }
// return 0;
//}
signed main(){
// cin>>n;
scanf("%lld",n);
for(int i=1;i<=n;i++){
cin>>a[i];
p[i]=i;
}
// for(int i=1;i<=m;i++){
// int cho,x,y;
// cin>>cho>>x>>y;
// if(cho==1){
// add(x,y);
// }
// else{
// ans=0;
// search(x,y);
// cout<<ans<<endl;
// }
// }
stable_sort(p+1,p+n+1,cmp);
for(int i=1;i<=n;i++){
a[p[i]]=i;
}
for(int i=n;i>=1;i--){
ans+=ask(a[i]-1);
add(a[i],1);
}
// cout<<ans;
scanf("%lld\n",ans);
return 0;
}
问下各位大佬为什么RE啊?