<정답 코드>
N,M = map(int,input().split())
basket = [i for i in range(1,N+1)]
for i in range(M):
i,j = map(int,input().split())
temp = basket[i-1:j]
temp.reverse()
basket[i-1:j] = temp
for i in range(N):
print(basket[i], end=" ")
☆ 코드 흐름
1. 바구니 개수 N과 반복 횟수 M을 각각 입력 받는다.
2. basket이라는 list를 선언하고 1부터 N까지 값을 넣는다. → range(1,N+1) : N+1까지 해줘야 N까지 들어가는거 주의
3. M번 동안 i와 j를 입력 받는다.
4. basket의 i번째부터 j번째 바구니를 바꿔야 하므로 리스트 인덱스는 i-1, j-1+1=j를 range로 하여 리스트를 슬라이싱한다.
5. 슬라이싱한 값을 temp에 넣어두고 temp.reverse()를 이용하여 바꿔준다.
'백준' 카테고리의 다른 글
[BaekJoon/Python3] 백준 11718번 : 그대로 출력하기 (0) | 2024.06.06 |
---|---|
[BaekJoon/Python3] 백준 [문자열] (0) | 2024.04.18 |
[BaekJoon/Python3] 백준 10813번 : 공 바꾸기 (1) | 2024.04.18 |
[BaekJoon/Python3] 백준 10810번 : 공 넣기 (1) | 2024.04.18 |
[BaekJoon/Python3] 백준 1546번 : 평균 (0) | 2024.04.17 |