[백준]2346번/ 풍선 터뜨리기

Effy_ee·2024년 1월 23일
0

코딩테스트

목록 보기
87/118

📖 문제
https://www.acmicpc.net/problem/2346

import sys
from collections import deque
n=int(sys.stdin.readline().rstrip())
l=list(map(int,sys.stdin.readline().split()))
l=[(l[i],i+1) for i in range(n)]  #(풍선안의숫자, 풍선번호)의 형태 리스트

def solution(n,l):
    q=deque(l) #큐로 만들어주기
    answer=[]
    while q:
        k=q.popleft() #처음에 있는 풍선
        answer.append(str(k[1]))	#풍선번호 답안에 추가
        if k[0]>0:					#풍선안의숫자가 양수이면
            q.rotate(-(k[0]-1))		#하나가 터뜨려진 상태이므로 하나를 빼고 회전	
        else:			            #음수이면
            q.rotate(-k[0])       	#회전		
    print(' '.join(answer))

solution(n,l)

0개의 댓글