문제링크
https://www.acmicpc.net/problem/2346
코드
from collections import deque
n = int(input())
q = deque(enumerate(map(int,input().split())))
while q:
idx,num = q.popleft()
print(idx+1,end=' ')
if num>0:
q.rotate(-(num-1))
else:
q.rotate(-num)
문제풀이
deque를 이용하여 문제설명대로 구현하였다. 적혀있는 숫자만큼 이동할때는 rotate함수를 이용하였다.
또한 enumrate를 사용하여 인덱스 정보를 같이 저장하였다.
유의할 점은 적혀있는 숫자가 0이상이면 적혀있는 숫자 -1 번 돌려야한다는 것 정도이다.
'Koala - 10기 > 코딩테스트 준비 스터디' 카테고리의 다른 글
[백준/python] 2178 미로 탐색 (0) | 2023.05.12 |
---|---|
[백준/python] 3986번 좋은 단어 (0) | 2023.05.08 |
[백준/Python] 1417번: 국회의원 선거 (0) | 2023.05.07 |
[백준/Python] #5430 AC (0) | 2023.05.07 |
[백준/1417] python 국회의원 선거 (0) | 2023.05.07 |