最近二分思路爆表
题目描述:
有n个木棍,长度不等,现在要将他们切成同等长度的木棍m个,并且每段的长度都为整数。问这m根木棍最长能有多长?
如果分不出来,输出0。
输入
第一行2个数:n, m中间用空格分隔(1 <= n <= 100000, 1 <= m <= 10^9)
后面n行:每行1个数,对应木棍的长度(1 <= Li <= 10^9)。
输出
输出一个整数,对应木棍的长度。
输入样例
3 10
15
25
12
输出样例
5
解题思路:
首先明确一点,我们这里应当去二分长度,并且要保证每个木棍切后加起来的总值是>=m的,如果满足了,那么我们就要去考虑是否还可以将长度继续扩大,因此我们就让二分的左值等于当前的这个数
核心代码:
完整代码:
#incl