본문 바로가기
알고리즘

[Python] 백준 10810 공 넣기

by noddu 2023. 6. 12.
728x90
반응형

 

[Python] 10810번 문제

 

 

반응형

 


풀이

 

n,m = map(int, input().split())

첫 번째 입력은 두 개의 정수를 받습니다.

 

 

 

basket = [0]*n

그리고 모든 바구니는 0으로 지정합니다.

바구니는 총 N개이니 [0]*n으로 지정했습니다.

 

 

for l in range(m):
  i,j,k = map(int,input().split())
  for x in range(i,j+1):
    basket[x-1] = k

M개의 줄에 걸쳐 공을 넣는 방법이 입력되니 반복문을 통해 입력을 M번만큼 받습니다.

 

i번 바구니부터 ~ j번 바구니까지 k공을 넣는데

1번 바구니부터 넣는다고 하면 basket[0] 바구니에 넣어야 하기 때문에 인덱스를 x-1로 해줍니다.

 

이렇게 바구니 인덱스에 k번호가 적혀있는 공을 대입하면 기존의 숫자는 없어지니 들어있는 공을 빼고, 새로 공을 넣는것이 됩니다.

 

 

for x in range(n):
  print(basket[x], end=" ")

정답을 출력할때는 반복문을 활용해 바구니 개수만큼 출력하는데,

개행 없이 공백으로 구분해 출력해야 하니 end=" "를 작성합니다.


 

정답
n,m = map(int, input().split())

basket = [0]*n

for l in range(m):
  i,j,k = map(int,input().split())
  for x in range(i,j+1):
    basket[x-1] = k

for x in range(n):
  print(basket[x], end=" ")
반응형

'알고리즘' 카테고리의 다른 글

[Python] 백준 1546 평균  (0) 2023.06.21
[Python] 백준 10811 바구니 뒤집기  (0) 2023.06.21
[Python] 백준 3052 나머지  (0) 2023.06.21
[Python] 백준 5597 과제 안 내신 분..?  (0) 2023.06.13
[Python] 백준 10813 공바꾸기  (0) 2023.06.12