全WA求调,悬关
  • 板块P1908 逆序对
  • 楼主zhyn
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/10/22 18:18
  • 上次更新2024/10/22 20:13:19
查看原帖
全WA求调,悬关
952115
zhyn楼主2024/10/22 18:18

样例过了,全WA。

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define maxn 500005

ll n,num[maxn],t[maxn];

ll ans=0;

void meg(int l,int r){
	if(l==r){
		return;
	}
	int mid=(l+r)/2;
	meg(l,mid),meg(mid+1,r);
	for(int i=l,j=mid+1,k=l;k<=r;k++){
		if(i==mid+1){
			t[k]=num[j++];
		}
		if(j==r+1){
			t[k]=num[i++];
		}
		else{
			if(num[i]<=num[j]){
				t[k]=num[i++];
			}
			else{
				t[k]=num[j++];
				ans+=mid-i+1;
			}
		}
	}
	for(int i=l;i<=r;i++){
		num[i]=t[i];
	}
}


int main(){
	
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	
	cin>>n;
	
	for(int i=1;i<=n;i++){
		cin>>num[i];
	}
	
	
	meg(1,n);

	
	
	cout<<ans;
	
	
	
	return 0;
} 
2024/10/22 18:18
加载中...