[SWEA] 피자 굽기

Date:

[SWEA] 피자 굽기

Problem URL : 피자 굽기

TC = int(input())
for tc in range(1, TC + 1):
    N, M = map(int, input().split())
    cheese = list(map(int, input().split()))
    q = [[0, 0]] * N
    idx = 0
    last = 0
    while q:
        firstOven = q.pop(0)

        if firstOven[0]:
            firstOven[0] //= 2  # 넣어줄 때부터 2로 나누어준다
            q.append(firstOven)
        elif firstOven[0] == 0 and cheese:
            idx = idx + 1
            newCheese = cheese.pop(0)
            q.append([newCheese//2, idx])  # 넣어줄 때부터 2로 나누어준다
        else:  # firstOven[0] == 0 and not cheese:
            last = firstOven[1]

    print("#{} {}".format(tc, last))

Comments

있는 그대로 시뮬레이션 하지말고 넣어줄 때부터 치즈를 2로 나눠주면 편하다.

댓글