#ABC450D. 加K求最小极差

加K求最小极差

题目大意

给定一个长度为NN的正整数序列AA和一个正整数KK,可以对序列执行任意次数的操作:选择1iN1 \le i \le N的整数ii,将AiA_i加上KK。要求求出执行操作后,序列的max(A)min(A)\max(A)-\min(A)能取到的最小值

输入格式

第一行输入两个整数NNKK 第二行输入NN个整数,表示序列A1,A2,,ANA_1,A_2,\dots,A_N

输出格式

一行输出max(A)min(A)\max(A)-\min(A)的最小可能值

数据范围

1N2×1051 \le N \le 2 \times 10^5 1K1091 \le K \le 10^9 1Ai1091 \le A_i \le 10^9 所有输入均为整数

样例输入1

3 10
3 21 9

样例输出1

4

样例说明1

依次对i=1i=1i=3i=3i=1i=1执行加1010操作,序列变为[23,21,19][23,21,19],此时max(A)min(A)=4\max(A)-\min(A)=4,且无法将该值缩小到33及以下,故答案为44

样例输入2

5 6
4 100 5 10 450

样例输出2

2

来源

AtCoder ABC450 D题 https://atcoder.jp/contests/abc450/tasks/abc450_d