[SWEA] - 5099. 피자 굽기

jjiani·2021년 3월 6일
0

SWEA

목록 보기
18/20
post-thumbnail

swea - 문제 링크

for tc in range(1, int(input()) + 1):
    # N은 화덕의 크기, M은 피자 개수
    N, M = map(int, input().split())
    arr = list(map(int, input().split()))

    pizza = []
    # 화덕 크기만큼만 담고
    # 출력시 피자의 위치 조정을 위해 인덱스를 i+1
    for i in range(N):
        pizza.append([i+1, arr[i]])

	# 치즈가 다 녹고 새로운 피자를 담을때를 위한 i
    i = 0
    while len(pizza) != 1:
        cheese = pizza.pop(0)
        melt = cheese[1] // 2
        cheese[1] = melt
        # 치즈가 다 녹았으면
        if cheese[1] == 0:
            # 화덕에 들어갈 피자가 있으면
            if i + N < M:
                # 다시 담지 말고 새로운 피자를 화덕에 넣어야함
                pizza.append([N + i + 1, arr[N + i]])
                i += 1
            else:
                pass
        # 다 안녹았으면 다시 돌리기
        else:
            pizza.append(cheese)

    print('#{} {}'.format(tc, pizza[0][0]))

🔑 피자 굽기 쉽지않네,,, 먹을줄만 알지 만들줄은 몰랐어요,,,!
내 스스로 이해하면서 코드를 짜느라 남들보다 비효율적인 코드가 있을 수도 길게 느껴질 수도 있지만 미래에 다시 볼 나를 위하여 코드를 줄이지 않았다.

profile
¡Bienvenido a mi velog!🐣

0개의 댓글