周周的泡泡
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

J 君是周周的月亮,是她经年累月的痴心妄想与求而不得。

周周站在地面上吹泡泡,她的月亮高悬于距离地面 h 千米的空中。

在周周的梦里,她变成了一个渺小的质点,而这些泡泡按下标顺序排成了垂直于地面的一列 (即所有泡泡的中心都位于相同的 x 坐标上)。周周站在所有泡泡的最顶端,因此她距离地面的高度即为所有泡泡的直径之和。

周周能抵达的最高高度或许会大于 h ,但月亮是周周的可望不可即,她不摘月亮,她要月亮永远高悬天上。周周可以戳破一段连续的泡泡(也可以不戳),以使得她的最终高度小于 h 但又尽可能接近 h

你知道周周最多可以距离她的月亮多近吗?

输入描述:

第一行有两个正整数 n, h,其中 

接下来一行有 n 个非负整数 ,其中 ,表示这些泡泡的直径。

输出描述:

在一行输出一个整数,表示与月亮距离的最小值。
示例1

输入

复制
5 10
1 2 3 5 6

输出

复制
1
示例2

输入

复制
1 10
10

输出

复制
10
示例3

输入

复制
3 10
1 2 3

输出

复制
4