https://www.acmicpc.net/problem/10812
10812번: 바구니 순서 바꾸기
도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2
www.acmicpc.net
풀이 과정
- 파이썬의 슬라이싱 기능을 이용하면 쉽게 풀 수 있는 문제이다.
- 리스트에 1~10까지 원소를 넣어둔 다음 입력받은 바구니 순서에 맞추어서 슬라이싱 해준다.
- i, j, k가 입력되면 ~i, j~k까지, i~k까지, j~에 맞추어서 슬라이싱 해준다.
- 최종 슬라이싱 된 리스트를 출력시켜 준다.
소스 코드
import sys
input = lambda: sys.stdin.readline().rstrip()
N, M = map(int, input().split())
buckets = [i for i in range(1, N+1)]
for _ in range(M):
i, j, k = map(int, input().split())
i, j, k = i-1, j-1, k-1
buckets = buckets[:i] + buckets[k:j+1] + buckets[i:k] + buckets[j+1:]
print(*buckets)
'알고리즘[Python] > 백준 알고리즘' 카테고리의 다른 글
[ 16397 ] [ BFS ] 탈출 (0) | 2021.11.13 |
---|---|
[ 2872 ] 우리집엔 도서관이 있어 (0) | 2021.11.12 |
[ 3055 ] [ BFS ] 탈출 (0) | 2021.11.09 |
[ 1449 ] [ Greedy ] 수리공 항승 (0) | 2021.11.08 |
[ 7662 ] [ heap ] 이중 우선순위 큐 (0) | 2021.11.07 |