题目描述
宁波天一广场上有美丽的喷泉,晚上常常还会播放美轮美奂的水幕电影。如果要把喷泉做为幕布的话,需要把喷泉的每根水柱高度尽量调成相似的高度。
假设把喷泉看成是长度为n的数组序列a,那么数组序列中的每个数字ai表示水柱的高度。喷泉设计工程师为了提高工作效率,想对数组中的每个数字只进行一次修改,他可以将数字ai修改为 ai + (0~ k)或ai - (0~ k) ,其中 1≤i≤n,k为正整数。喷泉工程师经过认真计算,细致调整修改后,对最后形成的水幕感觉满意极了,因为各个水柱的最大值和最小值相差很小。请问调整后水柱的最大值减去最小值的最小差值是多少?
输入
第一行输入两个正整数 n,k。n表示水柱的个数,k表示水柱在原先的高度基础上,可以调整的值的范围,具体意义详见题目描述。
第二行输入 n 个数,表示序列 a;
输出
输出一个数字表示答案。
样例输入输出
提示
数据范围
对于 10% 的数据,有 $n=2,1≤ai≤10,1≤k≤10$。
对于另外25% 的数据,有 $2≤n≤10^3,1≤ai≤10,1≤k≤10$。
对于另外25% 的数据,有 $2≤n≤10^5,0≤ai≤10^9,1≤k≤10^9$。
对于另外40% 的数据,有 $2≤n≤10^5,0≤ai≤10^{18},1≤k≤10^{18}$。
【样例解释】:
可以将第1个数字加2变成3;
将第2个数字减2变成3;
将第3个数字加0变成 3;
将第4个数字加1变成3;
将第5个数字减1 变成3;
最后形成的新序列就是 3 3 3 3 3,可以知道最大值减去最小值为0。