/ Vijos / 题库 /

锯木材

锯木材

时间限制:1秒  内存限制:256M


【问题描述】

  伐木工人小Y想要得到 \(M\) 米长的木材。
  树林中 \(N\) 棵大树排成一列,从左到右编号为 \(1..N\),第 \(i\) 棵树的高度为 \(h_i\)。
  小Y的伐木机工作过程如下:小Y设置一个高度参数 \(H\) (米),\(H\) 是一个整数。伐木机会把锯片升高到 \(H\),并锯掉所有的树比 \(H\) 高的部分(树木不高于 \(H\) 米的部分保持不变),小Y得到被锯下的部分的木柴。
  例如,有 4 棵高度分别为 20米,15米,10米和17米 的树,小Y把锯片升高到15米的高度,切割后 4 棵树的分别是 15米,15米,10米 和 15米,而小Y将得共到 7 米木材,即从第 1 棵树得到 5 米,从第 4 棵树得到 2 米。
  现在请你帮助小Y设定锯片的最大高度 \(H\),使得他能得至少为 \(M\) 米的木材。

【输入格式】

  第1行:2个整数 \(N\) 和 \(M\),\(N\) 表示树木的数量,\(M\) 表示需要的木材总长度。
  第2行:\(N\) 个整数表示每棵树的高度,值均不超过 \(10^9\),所有木材长度之和大于 \(M\),因此必有解。

【输出格式】

  输出锯片的最大高度(是一个整数)。

【输入输出样例】

 Input

5 20
4 42 40 26 46

 Output

36

【数据限制】

  \(n<=10^6 , M<=2*10^9\)

【来源】

  Mr.he

信息

ID
1146
难度
2
分类
其他 | 分治二分查找 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
5
上传者