#include<iostream> #include<sstream> #include<cstdio> #include<cstring> #include<string> #include<vector> #include<queue> #include<utility> #include<set> #include<map> #include<cctype> #include<cmath> #include<algorithm> using namespace std; #define RALL(x) (x).rbegin(),(x).rend() #define ALL(x) (x).begin(),(x).end() #define repp(i,n) for(int (i)=1;(i)<=(n);(i)++) #define rep(i,n) for(int (i)=0;(i)<(n);(i)++) #define rev(i,n) for(int (i)=(n-1);(i)>=0;(i)--) #define EACH(itr,c) for(__typeof((c).begin()) itr=(c).begin(); itr!=(c).end(); itr++) #define clr(a) memset((a), 0 ,sizeof(a)) typedef pair<int,int> P; typedef vector<pair<int,int> > pii; typedef map<string,string> mi; int main(){ int n,sum,m=1<<30; cin >> n; vector<int> vc(n); rep(i,n){ cin >> vc[i]; } sort(ALL(vc)); rep(i,n-1){ if(vc[i]==vc[i+1])continue; sum=vc[i+1]-vc[i]; if(sum<m)m=sum; } if(m==1<<30)m=0; cout << m << endl; return 0; }