Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def heapify(arr, n, i):
- largest = i
- left = 2 * i + 1
- right = 2 * i + 2
- if left < n and arr[left] > arr[largest]:
- largest = left
- if right < n and arr[right] > arr[largest]:
- largest = right
- if largest != i:
- arr[i], arr[largest] = arr[largest], arr[i]
- heapify(arr, n, largest)
- def heap_sort(arr, n):
- for i in range(int(n / 2) - 1, -1, -1):
- heapify(arr, n, i)
- def main():
- _result = []
- _input = list(map(int, input().split()))
- _delete = list(map(int, input().split()))
- heap_sort(_input, len(_input))
- for i in _delete:
- _input[i] = _input[-1]
- _input.pop()
- heapify(_input, len(_input), i)
- print(_input)
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement