最小值
题号:NC208616
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给你n个数,你必须删掉其中任意一个数。问怎样删除可以使得剩下的数中,最大的数减去最小的数的值最小。

输入描述:

第一行包含一个整数n(1<=n<=100000)
第二行包含n整数,ai (1<=i<=n && 1<=ai<=1e8)

输出描述:

输出这个最小值
示例1

输入

复制
5                                                                                                                                                                                      
6 3 1 2 2

输出

复制
2

说明

删除6,最大的数是3,最小的数是1,那么最大数减去最小数的值就是2
示例2

输入

复制
2
1 1000

输出

复制
0

说明

删掉1或者1000其中的一个,得到最小值0