【华为OD机试真题 java、python、c++、JsNode】最短木板长度(100%通过+复盘思路)

代码请进行一定修改后使用,本代码保证100%通过率,本题有java、python、c++、JsNode四种代码。复盘思路在文章的最后

题目描述

小明有 n 块木板,第i( 1<=i<= n ) 块木板长度为 a[i]

小明买了一块长度为 m 的木料,这块木料可以切割成任意块

拼接到已有的木板上,用来加长木板。

小明想让最短的木板尽量长。

请问小明加长木板后,最短木板的长度可以为多少?

输入描述

输入的第一行包含两个正整数,n(1<=n<=10^3),m(1<=m<=10^6),n表示木板数,m表示木板长度。输入的第二行包含n个正整数,a1.a2....an(1<=a[i]<=10^6).

输出描述

输出的唯一一行包含一个正整数,表示加长木板后,最短木板的长度最大可以为多少?

示例1

输入

5 3
4 5 3 5 5

输出

5

说明

给第1块木板长度增加1,给第3块木板长度增加2后
这5块木板长度变为[5,5.5.5.5],最短的木板的长度最大为5。

示例2

输入

5 2
4 5 3 5 5

输出

你可能感兴趣的:(华为od机试,c++,开发语言)