算法流程:
Python代码实现:
def minMaxTime(tasks, k): l, r = 0, sum(tasks) while l < r: m = (l + r) // 2 i, j = 0, 0 for x in tasks: if j + x <= m: j += x else: i = x j = x k -= 1 if k == 0: break if k == 0: l = m + 1 else: r = m return r
print(minMaxTime([3,2,4], 2)) # 输出:5