핵심 포인트 반복문 : for문 1차원 배열 reversed() 함수 제출코드 N, M = map(int, input().split()) backets = [i + 1 for i in range(N)] for _ in range(M): i, j = map(int, input().split()) backets[i - 1:j] = reversed(backets[i - 1:j]) print(' '.join(map(str, backets))) 해설 backets 변수에 1번부터 $N$번까지 정렬된 바구니의 번호를 초기화시켜줍니다. 다음으로 $M$번 반복문을 순회하면서 뒤집는 시작번호 $i$와 끝번호 $j$를 입력 받게 되죠. 이때, $i$번 인덱스부터 $j$번 인덱스까지 슬라이싱 한뒤 reversed 함수를 이..
핵심 포인트 반복문 : for문 1차원 배열 제출코드 check = [0] * 30 for _ in range(28): check[int(input()) - 1] = 1 for idx, check_ in enumerate(check): if check_ != 1: print(idx + 1) 해설 check 변수에 해당 번호의 학생이 과제를 제출 (1)했는 지 안했는(0) 지를 저장해놓습니다. 이제 반복문을 통해 한 줄에 하나씩 입력을 받을 때 마다 제출한 학생의 번호에 따른 check 변수를 0에서 1로 바꾸어줍니다. 출력할 때는 한번 더 반복문과 enumerate를 이용해서 번호순으로 과제를 제출하지 않은 학생의 번호를 출력해줍니다. 참고자료 및 그림출처 백준 코딩 문제