본문 바로가기
코딩 테스트/do it! 알고리즘 코딩테스트

014 절댓값 힙

by ornni 2024. 4. 22.
728x90
반응형

첫번째 코드

 

스택이나 큐를 이용해서 풀고싶었는데

코드가 너무 복잡해지고 계속 중간에 오류가 나서....

 

책을 참고했더니 우선순위 큐를 이용하면 된다고 한다!

정렬 기준을 적용해서 선언하는 방법이다

 

import sys
input = sys.stdin.readline
print = sys.stdout.write
from queue import PriorityQueue

n = int(input())
queue = PriorityQueue()

for i in range(n):
    request = int(input())
    
    if request == 0:
        if queue.empty():
            print('0\n')
        else:
            temp = queue.get()
            print(str((temp[1])) + '\n')
    else:
        queue.put((abs(request), request))

 

위의 방법으로 불러오고 정렬 기준을 세워주면 예쁘게 정렬대로 큐에 저장이 된다

 

통과!

근데 흠... 다음에 풀어보자! 이해가 잘 안되는건지 낯선건지...

덱으로 풀 수 있는 방법이 있을 것 같은데 고려해 보아야 겠다


링크

https://github.com/ornni/programmers/tree/main/%EB%B0%B1%EC%A4%80/Silver/11286.%E2%80%85%EC%A0%88%EB%8C%93%EA%B0%92%E2%80%85%ED%9E%99

 

programmers/백준/Silver/11286. 절댓값 힙 at main · ornni/programmers

repository for recording Programmers Algorithm problem solving - ornni/programmers

github.com

 

반응형

'코딩 테스트 > do it! 알고리즘 코딩테스트' 카테고리의 다른 글

015 수 정렬하기  (0) 2024.04.25
016 버블 소트  (0) 2024.04.25
013 카드2  (0) 2024.04.22
011 스택 수열  (0) 2024.04.18
012 오큰수  (0) 2024.04.18