PS/백준
[Python] 14627번 파닭파닭
s_omi
2024. 7. 31. 09:53
✏️ 문제
문제 파악
알고리즘
- 매개 변수 탐색
- 이분 탐색
코드
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)