Skip to content

Instantly share code, notes, and snippets.

@vaishaks
Last active December 19, 2015 18:08
Show Gist options
  • Save vaishaks/5996069 to your computer and use it in GitHub Desktop.
Save vaishaks/5996069 to your computer and use it in GitHub Desktop.
def inv(arr,n):
if n==1:
return 0
else:
x=inv(arr[0:n/2],n/2)
y=inv(arr[n/2:n],n/2)
z=split(arr[0:n/2],arr[n/2:n])
return x+y+z
def split(a,b):
a.sort()
b.sort()
i=j=k=0
count=0
z=[]
if a[i]<b[j]:
z.append(a[i])
k+=1
i+=1
else:
z.append(b[j])
j+=1
k+=1
count+=(len(a)-i)
return count
if __name__=='__main__':
arr = [int(line.strip()) for line in open("IntegerArray.txt", 'r')]
c=inv(arr,len(arr))
print c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment