알고리즘 문제/자료구조 문제
(백준 자료구조 문제풀이) 2346번 풍선 터트리기
재코딩
2022. 7. 19. 18:29
반응형
문제
코드
case 1 (rotate)
import sys
from collections import deque
input = sys.stdin.readline
n = int(input())
balloons = deque(enumerate(map(int, input().split())))
result = list()
while balloons:
x, value = balloons.popleft()
result.append(x+1)
if value > 0:
balloons.rotate(-(value - 1))
else:
balloons.rotate(-value)
print(*result)
case 2 (append, pop 활용)
import sys
from collections import deque
input = sys.stdin.readline
n = int(input())
balloons = deque(enumerate(map(int, input().split())))
result = list()
while balloons:
x, value = balloons.popleft()
result.append(x+1)
if value > 0:
for _ in range(value-1):
if len(balloons) != 0:
balloons.append(balloons.popleft())
else:
for _ in range(abs(value)):
if len(balloons) != 0:
balloons.appendleft(balloons.pop())
print(*result)
반응형