max heap(또는 min heap) 에서 원소 하나를 pop 하는건 아주 간단하죠. 그냥 root를 pop하고 젤 밑에있는놈을 root로 올려준후에 적당한 자리까지 흘려내려주면 되잖아요. 물론 S번 pop할때는 이과정을 S번 하면 됩니다.
제가 해결하고자 하는 문제에서 S가 굉장히 커서 수행시간이 느려지게 됩니다. 한번에 S개의 원소를 빼는 거 자체는 문제가 없습니다. heap을 배열로 관리할 경우 첫 S개의 원소를 빼면 되니까요. 그 후에 heap 으로 restore을 어떻게 할 수 있을까요