1 条题解
-
1
#include<bits/stdc++.h> using namespace std; long long n,s,b[1250005],c[2500000],i; void px(long l,long r) { if(l==r)return; long mid=(l+r)/2; long k=l,i=l,j=mid+1; px(l,mid); px(mid+1,r); while(i<=mid&&j<=r) if(b[i]<=b[j])c[k++]=b[j++]; else c[k++]=b[i++],s=(s+r-j+1); while(i<=mid)c[k++]=b[i++]; while(j<=r)c[k++]=b[j++]; for(i=l;i<=r;i++)b[i]=c[i]; } int main() { cin>>n; for(i=1;i<=n;i++)cin>>b[i]; px(1,n); cout<<s<<endl; return 0; }
- 1
信息
- ID
- 106
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 18
- 已通过
- 13
- 上传者