Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from bisect import bisect_left
- def countTriangleTripleIndex(a):
- a.sort()
- n, count = len(a), 0
- for i in range(n-2):
- j = i+1
- k = bisect_left(a, a[i]+a[j])-1
- while k < n:
- if k > j and a[i] + a[j] <= a[k]:
- count += k-j-1
- j += 1
- else:
- k += 1
- count += (k-j) * (k-j-1)/2
- return count
- a = [2, 3, 4, 5]
- print countTriangleTripleIndex(a)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement