풀이 역순으로 생각해야 풀 수 있는 문제라고 생각했기에 카드 배열을 reverse() 한 다음 result 라는 배열을 계속 한 칸씩 밀어낼 수 있도록 하기 위해 deque를 사용 이후 카드 배열을 하나씩 추가한 다음 cnt에 맞게 rotate를 통해 뒤에서 앞으로 한 칸씩 밀어내어 해결 from collections import deque n = int(input()) cnt = n li = [i for i in range(1,n+1)] li.reverse() result = deque([]) for i in li: result.appendleft(i) for _ in range(cnt): result.rotate(1) cnt -= 1 print(*result)