class ArrayInversion { public static int count=0; public int countArrayInversions(int a[]) { mergeSort(a,0,a.length-1); return count; } public void mergeSort(int a[],int low,int high) { if(lowmid) { a[m]=c[j]; j++; } else if(j>high) { a[m]=c[i]; i++; } else if(c[i]<=c[j]) { a[m]=c[i]; i++; } else { a[m]=c[j]; for(int ll=i;ll<=mid;ll++) System.out.println("Pair : "+c[ll]+" - "+c[j] ); count+=mid-i+1; j++; } } } public void printArray(int a[]) { int s=a.length; for(int i=0;i