Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from itertools import combinations
- from itertools import product
- def compute(a,b):
- return abs(a-b)
- A = [0,3,3,7,5,3,11,1]
- dict = {}
- min = A[0]
- max = A[0]
- for i in range(len(A)):
- if A[i] in dict:
- dict[A[i]].append(i)
- else:
- dict[A[i]] = [i]
- if A[i] < min:
- min = A[i]
- elif A[i] > max:
- max = A[i]
- prev = dict[min]
- combs = []
- for i in range(min+1,max+1,1):
- if i in dict:
- prev.extend(dict[i])
- prev.sort()
- comb = list(combinations(prev, 2))
- combs.extend(comb)
- prev = dict[i]
- min = compute(A[combs[0][0]], A[combs[0][1]])
- for couple in combs:
- value = compute(A[couple[0]], A[couple[1]])
- if value < min:
- min = value
- print(min)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement