Deloitte | COGNIZANT | IBM | CAPGEMINI
import math
def is_possible(K, houses, H):
total_time = 0
for house in houses:
total_time += math.ceil(house / K)
return total_time <= H
def find_min_K(n, H, houses):
low = 1
high = max(houses)
answer = high
while low <= high:
mid = (low + high) // 2
if is_possible(mid, houses, H):
answer = mid
high = mid - 1
else:
low = mid + 1
return answer
n, H = map(int, input().split())
houses = list(map(int, input().split()))
print(find_min_K(n, H, houses))
q1
//quantiphi✅
1.3K ·