- editado por el moderador: llevad cuidado al poner según que enlaces que puedan descargar contenido indeseado
#include<iostream>
using namespace std;
long long mergeHalf(long long A[],long l,long long mid,long long r){
long long k=mid,i_count=0;
while((l<=mid-1) && (k<=r))
if(A[l]<=A[k])
l++;
else{
k++;
i_count+=(mid-l);
}
return i_count;
}
long long countInversion(long long A[],long l,long long r)
{
long long mid,i_count=0;
if(r>l){
mid=(l+r)/2;
i_count=countInversion(A,l,mid);
i_count+=countInversion(A,mid+1,r);
i_count+=mergeHalf(A,l,mid+1,r);
}
return i_count;
}
int main()
{
int t;
long n;
cin>>t;
while(t--){
cin.ignore();
cin>>n;
long long A[n];
for(long i=0;i<n;i++)
cin>>A[i];
cout<< countInversion(A,0,n-1)<<"\n";
}
}
es pa hacerme el shulo
-----BEGIN PGP MESSAGE-----
Version: haneWIN JavascriptPG v2.0
hQGRAzys+Bcv1xHyEAAYmcYAC/0ZK0JFmRA/opphPemsXFnlhXmOfTo6MjAr
K7EsMpYpUQljsaDRIRc9cabYbx3FeQRjUoxZFp0sjOXTXskMEYeX6UkOaLcD
GbS6DL8VQsBRp6gVBHcMRRXEUBaD1PuK9dxs60lB5IcTp6L5NDMXsb+EQpGj
i6RBihINnEWvXf0MXF9DriT/tdLRjtKynJUJhtk8PumsJYz8MOTQ7sMRLdz9
4VQy0mBDb3R18y3XX8B2Wk5XGa0tkO4eDDQHqCNiEknuX5BTM6+EJAOFsUGg
7u6Us4rz1PlO0Sx1zcDRjFOEqrdGltyES3nebO5KMCph89i1ujfNTIVZm1bs
4TuALoybt7zpygXlqMJQnGCTyHhFsEkAQSyM65V2ldROJPt3sBIZ0EXRN/U
h1kNAJQ0gNh8MA4EfF8dFwnXnQyUipTt6myT4dfteKbJT1V/0dQqJ1e4TLkC
cyJYX/Tzq3kn9ZOP2Xv98Y/dO7jT6icgBH/sfM5yUe8DzWqqc+ot8cEXc16k
WyrzCWdhHxvnmBpAANKULxD+9Ld6U/s/Ru20XgZmDKNKLaHsq4AGxb0pDULz
tG1AM5Z7ybXFU2hKvkzwIVoT4K7/opEKJby5T9ywz21Zey1UX0dyjrJqSDKN
jHs=
=Aglp
-----END PGP MESSAGE-----
lol, no me acrodaba de que tenía esto