728x90
반응형
SMALL
✏️ 문제
문제 파악
알고리즘
- 매개 변수 탐색
- 이분 탐색
코드
import sys
input = sys.stdin.readline
s, c = map(int, input().split())
l = [int(input()) for i in range(s)]
best_remain = 0
start, end = 1, max(l)
while start <= end:
mid = (start + end) // 2
num = 0
remain = 0
for length in l:
num += (length // mid)
remain += (length % mid)
if num > c:
remain += (num - c) * mid
best_remain = remain
start = mid + 1
elif num == c:
best_remain = remain
start = mid + 1
else:
end = mid - 1
print(best_remain)
728x90
반응형
LIST
'PS > 백준' 카테고리의 다른 글
[Python] 13702번 이상한 술집 (0) | 2024.07.31 |
---|---|
[Python] 1166번 선물 (0) | 2024.07.31 |
[Python] 6236번 용돈 관리 (0) | 2024.07.30 |
[Python] 2417번 정수 제곱근 (0) | 2024.07.30 |
[Python] 17266번 어두운 굴다리 (0) | 2024.07.30 |