73分代码求调qwq
查看原帖
73分代码求调qwq
849486
wsqin_qwq楼主2024/3/2 19:30
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
typedef long long LL;
const int N=1e5+5;
int n,a[N],tr[N],g[N];
int lowbit(int x){return x&-x;}
void in(int x){for(int i=x; i<=n; i+=lowbit(i)){tr[i]++;}}
int sum(int x){
	int res=0;
	for(int i=x; i; i-=lowbit(i)){
		res+=tr[i];
	}
	return res;
}
int main(){
	cin>>n;
	for(int i=1; i<=n; i++)cin>>a[i];
	for(int i=1; i<=n; i++){
		int y=a[i];
		g[i]=sum(y-1);
		in(y);
	}
	memset(tr,0,sizeof tr);
	LL res=0;
	for(int i=n; i; i--){
		int y=a[i];
		res+=g[i]*(sum(n)-sum(y));
		in(y);
	}
	cout<<res;
}
2024/3/2 19:30
加载中...