[백준/파이썬] 19698번 풀이

업데이트:



문제 정보


풀이

문제

농부 존은 소들을 위해 새로운 헛간을 지었다. 소들의 리더인 암소 베시는 새로운 헛간에 입주할 소들을 추첨으로 정하기로 했다. 소들은 그동안 모아 왔던 건초 더미를 담보로 추첨에 응모했다.

이번 추첨에는 총 $N$마리의 소가 응모했다. 헛간은 $W \times H$ 크기의 직사각형이다. 베시는 소 한 마리당 $L \times L$ 크기의 공간을 배정할 계획이다.

베시는 헛간을 최대한 효율적으로 나누어 최대한 많은 소를 입주 시키려고 한다. 헛간에는 최대 몇 마리의 소들이 입주할 수 있는지 출력하라. 소들이 입주하는 공간의 각 변은 직사각형의 각 변에 대해 수평 혹은 수직이여야 한다.

입력 요약
소들의 수 $N$, 헛간의 크기 $W \times H$를 나타내는 두 정수 $W$와 $H$, 그리고 소들에게 배정되는 공간의 크기 $L$이 순서대로 주어진다.

출력 요약
헛간에 최대 몇 마리의 소들이 입주할 수 있는지 출력한다.

코드

n, w, h, l = map(int, input().split())
print(min((w // l) * (h // l), n))

설명

핵심은 구현 관점에서 농부 존은 소들을 위해 새로운 헛간을 지었다. 소들의 리더인 암소 베시는 새로운 헛간에 입주할 소들을 추첨으로 정하기로 했다. 소들은 그동안 모아 왔던 건초 더미를 담보로 추첨에 응모했다.

이번 추첨에는 총 $N$마리의 소가 응모했다. …를 만족하도록 로직을 구성하는 것입니다.

코드는 입력을 파싱한 뒤 조건 분기와 계산을 순서대로 수행하고, 문제에서 요구한 형식으로 결과를 출력합니다.

경계값과 예외 케이스도 함께 고려해 오답이 나기 쉬운 상황을 방지합니다.



이런 주제는 어떠신가요?

비슷한 난이도와 유형의 문제를 이어서 보면 풀이 감각을 더 빠르게 잡기 좋습니다.

댓글남기기