
[
import sys
from collections import deque
input = sys.stdin.readline
def main():
n = int(input().strip())
arr = list(map(int, input().split()))
ball = deque((i+1, arr[i]) for i in range(n))
ans = []
while ball:
ind, val = ball.popleft()
ans.append(str(ind))
if not ball:
break
#양수 음수로 나누지 않는 법도 가능하다
if val > 0:
# 양수 k는 남은 배열에서 오른쪽으로 k칸
#자기자신 제거됐으니 k-1
ball.rotate(-(val-1))
else:
# 음수는 왼쪽으로 k칸 이동한다.
#오른쪽으로 -(-k) = k칸
ball.rotate(-val)
print(" ".join(ans))
if __name__ == "__main__":
main()

#점화식을 이용한 코드라는데 아직은 감이 확실하게 잘 안 온다.......
n = int(input())
dp = [0] * (n+2) # dp[i]는 길이 i인 이친수 개수
dp[1] = 1 #길이가 1일 때는 1개이다
dp[2] = 1 #길이가 2일때는 10만 가능하므로 1개이다 (11은 불가능)
for i in range(3, n+1):
dp[i] = dp[i-1] + dp[i-2]
#여기서 트리 구조처럼 필요한 것만 더한다
print(dp[n])'C언어' 카테고리의 다른 글
| 2025년 2학기 5주차 C언어 (0) | 2025.10.11 |
|---|---|
| 2025년 2학기 4주차 C언어 (1) | 2025.10.05 |
| 2025년 2학기 2주차 (0) | 2025.09.20 |
| 2025년 2학기 1주차 (0) | 2025.09.14 |
| 2025년 여름학기 9주차 C언어 (0) | 2025.08.24 |