1655번 - 가운데를 말해요
첨부된 코드는 전체 코드의 일부분입니다.
두 힙의 최대와 최소를 각각 비교하여 change해주는 작업인데
이렇게 list index를 통해서 바꿔주면 틀렸습니다가 도출됩니다.
제가 이렇게 한 이유는
d=[]
heapq.heappush(d,2)
heapq.heappush(d,-3)
heapq.heappush(d,-10)
를 하면 d=[-10,-3,2] 이 도출되는데요 , 이렇게 heappush를 통해 원소를 넣으면 d[0]이 list에서 최솟값을 가짐을 확인할 수 있습니다.
저는 이것을 이용하여 heapq.heappop() 을 사용하지 않고 문제를 해결하려고 했지만, 실패를 맞이했습니다. 이 부분만 바꿔주면 맞았습니다가 나오더라구요.
왜 이렇게 하는 방식이 틀린 건지 알려주시면 감사하겠습니다.
댓글을 작성하려면 로그인해야 합니다.
duddnd919 2년 전
첨부된 코드는 전체 코드의 일부분입니다.
두 힙의 최대와 최소를 각각 비교하여 change해주는 작업인데
이렇게 list index를 통해서 바꿔주면 틀렸습니다가 도출됩니다.
제가 이렇게 한 이유는
d=[]
heapq.heappush(d,2)
heapq.heappush(d,-3)
heapq.heappush(d,-10)
를 하면 d=[-10,-3,2] 이 도출되는데요 , 이렇게 heappush를 통해 원소를 넣으면 d[0]이 list에서 최솟값을 가짐을 확인할 수 있습니다.
저는 이것을 이용하여 heapq.heappop() 을 사용하지 않고 문제를 해결하려고 했지만, 실패를 맞이했습니다. 이 부분만 바꿔주면 맞았습니다가 나오더라구요.
왜 이렇게 하는 방식이 틀린 건지 알려주시면 감사하겠습니다.