import java.io.*; import java.util.*; import java.util.stream.*; // 処理 class Process { private int[] X; Process(int[] X) { this.X = X; } int getResult() { int[] newX = IntStream.of(X).distinct().sorted().toArray(); if(newX.length == 1) { return 0; } int minDistance = (newX[1] - newX[0]); for(int i = 1; i < (newX.length - 1); i++) { minDistance = Math.min(minDistance, (newX[i + 1] - newX[i])); } return minDistance; } } public class Main { public static void main(String[] args) throws IOException { var bufferedReader = new BufferedReader(new InputStreamReader(System.in)); var printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out))); // 入力 int N = Integer.parseInt(bufferedReader.readLine().trim()); int[] X = Stream.of(bufferedReader.readLine().trim().split("[ ]+")).mapToInt(Integer::parseInt).toArray(); // 出力 printWriter.println((new Process(X)).getResult()); bufferedReader.close(); printWriter.close(); } }