//201712-1
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
using namespace std;
int main(){
int n;scanf("%d", &n);
int arr[n];
for (int i = 0; i < n; i++)scanf("%d", &arr[i]);sort(arr, arr + n);
int minData = 1 << 30;
for (int i = 1; i < n; i++)
if (abs(arr[i] - arr[i - 1]) < minData)
minData = abs(arr[i] - arr[i - 1]);printf("%d\n", minData);
return 0;}
//201712-1
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;scanf("%d", &n);
vector<int> v(n);
for (int i = 0; i < n; i++)scanf("%d", &v[i]);sort(v.begin(), v.end());
int res = 1 << 30;
for (int i = 1; i < n; i++)
if (v[i] - v[i - 1] < res)
res = v[i] - v[i - 1];printf("%d\n", res);
return 0;}
//201712-2
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
using namespace std;
int main(){
int n, k;scanf("%d%d", &n, &k);
queue<int> q;
for (int i = 1; i <= n; i++)
q.push(i);
int i = 1;
while (q.size() > 1){
int t = q.front();
q.pop();
if (i % k != 0 && i % 10 != k)
q.push(t);
i++;}printf("%d\n", q.front());
return 0;}
//201712-2
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, k;scanf("%d%d", &n, &k);
queue<int> q;
for (int i = 1; i <= n; i++)
q.push(i);
int cnt = 1;
while (q.size() > 1){
int cur = q.front();
q.pop();
if (cnt % k != 0 && cnt % 10 != k)
q.push(cur);
cnt++;}printf("%d\n", q.front());
return 0;}