SWEA 2930. 힙

2024. 3. 18. 21:13코딩 테스트/SWEA

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV-Tj7ya3jYDFAXr

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

전체 코드

import heapq

T = int(input())

print_num_list = []
for testcase in range(1, T + 1):
    heap = []
    print_nums = [testcase]
    N = int(input())
    for _ in range(N):
        read_line = input()
        # x를 힙에 넣어라
        if len(read_line) > 2:
            cmd, num = map(int, read_line.split())
            heapq.heappush(heap, -num)
        # x를 힙에서 빼라
        else:
            cmd = int(read_line)
            if len(heap) > 0:
                print_nums.append(-heapq.heappop(heap))
            else:
                print_nums.append(-1)

    print_num_list.append(print_nums)

for print_nums in print_num_list:
    s = list(map(str, print_nums))
    print('#' + ' '.join(s))

 

풀이

출력 숫자를 전부 모아서 한번에 print 해야 타임아웃이 발생하지 않는다.

'코딩 테스트 > SWEA' 카테고리의 다른 글

SWEA 5658. 보물상자 비밀번호  (0) 2024.03.18
SWEA 13736. 사탕 분배  (1) 2024.03.18
SWEA 5215. 햄버거 다이어트  (0) 2024.03.07
SWEA 1217. 거듭제곱  (0) 2024.03.07
SWEA 2817. 부분 수열의 합  (0) 2024.03.07