[백준] 10804 카드 역배치 (파이썬)

Jewon Joel Park·2022년 5월 30일
0

문제 링크


문제 설명

오름차순 정렬된 20까지의 카드를, 총 10번 주어지는 a ~ b 구간만 역순 정렬하여 출력하는 코드 작성


풀이 코드

basic = [i for i in range(21)]
for _ in range(10):
    a, b = map(int, input().split())
    basic[a:b+1] = basic[b:a-1:-1]

print(*basic[1:])

코드 설명

  1. 0부터 20까지 수를 나열하는 배열 생성
  2. 총 10번 동작하는 for Loop 선언 후 a, b 저장
  3. a, b를 1번에서 생성한 배열을 슬라이싱하기 위한 인덱스로 활용
    • basic[b:a-1:-1]: b 부터 a까지 -1 스탭씩 저장한 배열을
    • basic[a:b+1]: a부터 b까지 구역에 새로이 저장
  4. 수정된 배열을 0번 인덱스를 제외하고 언패킹하여 출력
profile
10년을 돌고 돌아 마침내 제자리를 찾은 문과 출신 Python 개발자의 인생기록장

0개의 댓글