피자의 순서와 치즈양을 저장할 deque(pizza)와 화덕을 표현할 deque(hwa)를 활용한다.
from collections import deque
for tc in range(1, int(input())+1):
N,M = map(int,input().split()) #크기 갯수
arr=deque(map(int,input().split()))
pizza = deque([(i+1,arr[i]) for i in range(M)])
hwa=deque()
for _ in range(N):
hwa.append(pizza.popleft())
while len(hwa)!=1:
num,cheese = hwa.popleft()
cheese//=2
if cheese:
hwa.append((num,cheese))
else:
if pizza:
hwa.append(pizza.popleft())
print(f'#{tc} {hwa[0][0]}')
텍스트