코드
n, m = map(int, input().split())
lenseon = [int(input()) for i in range(n)]
start = 1
end = max(lenseon)
result = 0
while(start <= end):
total = 0
mid = (start + end) // 2
for seon in lenseon:
total += seon // mid
if total < m:
end = mid - 1
else:
result = mid
start = mid + 1
print(result)
유의할 점
start를 0으로 두면 ZeroDivisionError가 뜸
ex)start가 0이고 렌선의 길이가 모두 1인 경우 mid가 0이 됨.
'백준' 카테고리의 다른 글
[백준] 1940번 주몽 파이썬 코드 (0) | 2023.09.07 |
---|---|
[백준] 2776번 암기왕 파이썬 코드 (0) | 2023.09.06 |
[백준] 2512번 예산 파이썬 코드 (0) | 2023.09.05 |
[백준] 1072번 게임 파이썬 코드 (0) | 2023.09.05 |
[백준] 2805번 나무 자르기 파이썬 코드 (0) | 2023.09.05 |