티스토리 뷰
n,m = map(int,input().split())
basket = [0]*n
for _ in range(m):
i,j,k = map(int, input().split())
for x in range(i-1, j):
basket[x] = k
for x in range(n):
print(basket[x], end = '')
- 첫 번째 줄에서 n과 m을 입력으로 받습니다. 이것은 바구니의 수와 공을 넣는 방법의 수를 나타냅니다.
- basket이라는 이름의 길이가 n인 배열을 생성하며, 모든 요소를 0으로 초기화합니다. 이 배열은 바구니의 상태를 나타내며, 바구니 번호는 1부터 n까지입니다.
- 다음으로, for 루프를 사용하여 m번의 반복을 수행합니다. 각 반복에서 i, j, k를 입력으로 받습니다. 이들은 다음을 의미합니다:
- i: 공을 넣을 첫 번째 바구니의 번호
- j: 공을 넣을 마지막 바구니의 번호
- k: 넣을 공의 번호
- 이어지는 for 루프에서는 i부터 j까지의 바구니 범위를 반복하면서, 각 바구니에 k 번호의 공을 넣습니다. 주의해야 할 점은, 배열 인덱스는 0부터 시작하므로 입력으로 주어진 바구니 번호를 1씩 빼서 배열 인덱스로 변환합니다.
- 모든 작업이 완료되면, 각 바구니의 상태를 출력합니다. 공이 들어 있지 않은 바구니는 0으로 출력됩니다
============================================================================================
basket = [0] * n는 Python에서 리스트를 생성하는 코드입니다. n 개의 원소를 갖는 리스트를 생성하고, 각 원소의 초기값을 0으로 설정합니다. 이 코드는 리스트 컴프리헨션을 사용하지 않고도, n 개의 0으로 초기화된 리스트를 생성하는 간단한 방법 중 하나입니다.
예를 들어, n이 5일 때, 이 코드는 다음과 같은 리스트를 생성합니다: [0, 0, 0, 0, 0]. 이렇게 생성된 리스트는 5개의 원소를 갖고 있고, 각 원소의 값은 0입니다. 이 리스트를 basket 변수에 할당하면, basket은 리스트 자료형을 나타내며, 각 원소에는 인덱스를 통해 접근할 수 있습니다.
'코딩테스트' 카테고리의 다른 글
백준 [2675번] 문자열 반복 (1) | 2023.10.26 |
---|---|
2023-10-17 카카오페이(아임포트) 데이터베이스 연결설정 (1) | 2023.10.17 |
[백준] 10811번 바구니 뒤집기 (0) | 2023.09.13 |
[백준] 3052번 나머지 (0) | 2023.09.12 |
[백준] 10813번 공 바꾸기 (0) | 2023.09.11 |