200268 - 思路清晰注重细节

Time Limit

1000 毫秒

Memory Limit

128 MB

通过次数

3

提交次数

9

给定一个数列,求含有其中最大最小值的最小区间大小。

如:

2 9 8 1 9 9 最大值为9最小值为1,包含1、9的最小区间长度为2。

Input

第一行,一个正整数n,表示数据个数。

第二行,n个整数a_i,依次表示数列中的数。

对于100%的数据:

1\le n \le 10^6

0 \le a_i \le 2^{31} -1

注:2^{31} -1 表示的是int类型的最大值2147483647

获得具体值可以用:

cout<<INT_MAX<<endl; 

cout<<(~(1<<31))<<endl;

cout<<((~0)^(1<<31))<<endl;

cout<<((1UL<<31)-1)<<endl;

Output

一行,一个正整数,表示所求最小区间长度。

Examples

Input

4
1 2 1 2

Output

2