Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from math import inf
- def get_len(arr):
- count = 0
- for elem in arr:
- if elem != 0:
- count += 1
- return count
- def find_min(n, arr):
- ind = 0
- m = inf
- for i in range(n):
- if arr[i] < m and arr[i] != 0:
- m = arr[i]
- ind = i
- return ind
- def find_max(n, arr):
- ind = 0
- m = -inf
- for i in range(n):
- if arr[i] >= m and arr[i] != 0:
- m = arr[i]
- ind = i
- return ind
- def solution(n, arr):
- count = 0
- while get_len(arr) > 1:
- min_elem_ind = find_min(n, arr)
- max_elem_ind = find_max(n, arr)
- if arr[min_elem_ind] == arr[max_elem_ind]:
- count += arr[min_elem_ind]
- arr[min_elem_ind] = 0
- arr[max_elem_ind] = 0
- else:
- arr[min_elem_ind] -= 1
- arr[max_elem_ind] -= 1
- count += 1
- return count
- n = int(input())
- arr = list(map(int, input().split()))
- print(solution(n, arr))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement