淇淇 @ 2019-08-06 21:03:08
#include <bits/stdc++.h>
using namespace std;
int a[100100],ans=0;
int main()
{
long long n;
cin>>n;
for(long long i=0;i<n;i++)
{
cin>>a[i];
}
for(long long i=0;i<n;i++)
{
for(long long j=i;j<n;j++)
{
if(a[i]>a[j] && i<j) ans++;
}
}
cout<<ans<<endl;
return 0;
}
by Irppy3_40 @ 2019-08-06 21:06:26
@淇淇 这题数据太大,这样子会超时,以后学归并排序或树状数组再来做吧
by 向JFCA说不 @ 2019-08-06 21:07:43
@淇淇 应该不会n方过50万吧 by chen_zhe
by hfee @ 2019-08-06 21:08:37
@淇淇 这题用的归并排序,这样会超时
by 反手for循环 @ 2019-08-06 21:08:58
用冒泡排序来求逆序对可以是可以,不过效率不高,不适合题目的数据。
by 反手for循环 @ 2019-08-06 21:09:28
建议用归并排序。
by 淇淇 @ 2019-08-07 08:59:34
@反手for循环
@白狼与玫瑰
谢谢~~