from heapq ヒープのK番目の値を更新したい。 →書き換えてから_siftdownでO(logN)でヒープの状態に戻せる
from heapq import _siftdown queue = [1, 2, 3] K = 1 queue[K] = -1 _siftdown(queue, 0, K) print(queue) # => [-1, 1, 3]