SWEA(Python) 풀이/D3

SWEA[D3] (Python) 5789번 현주의 상자 바꾸기 풀이

개발윗미 2022. 5. 20. 16:32

Python으로 구현한 5789번 현주의 상자 바꾸기 문제 풀이입니다.

 

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&contestProbId=AWYygN36Qn8DFAVm&categoryId=AWYygN36Qn8DFAVm&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=PYTHON&select-1=3&pageSize=10&pageIndex=4 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com


t = int(input())

for tc in range(1, t + 1) :
    n, q = map(int, input().split())
    data = [0] * n
    for i in range(1, q + 1) :
        l, r = map(int, input().split())
        for j in range(l-1, r) :
            data[j] = i

    print(f'#{tc}', *data)

 

1. 각 테스트 케이스마다 0으로 초기화 된 n개의 데이터를 담은 data 리스트를 정의한다.

 

2. 1부터 q + 1까지를 반복문의 범위로 설정하고, l, r을 입력받은 후 data 리스트의 l 이상 r 이하의 인덱스 값을 i로 갱신한다.

 

3. 반복문이 종료되면 최종적으로 해당 테스트 케이스 번호와 함께 data 리스트의 요소를 출력한다.