import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { public static void main(String[] args) { /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */ try (Scanner scanner = new Scanner(System.in)) { int n = scanner.nextInt(); SortedMap array = new TreeMap<>(); int number; for (int i = 0; i < n; i++) { number = scanner.nextInt(); if (!array.containsKey(number)) { array.put(number, 0); } array.put(number, array.get(number) + 1); } // processing int minDifference = Integer.MAX_VALUE; int amountOfNumbers = Integer.MIN_VALUE; int firstKey = array.firstKey(); int secondKey; for (Integer currentKey: array.keySet()) { if (currentKey == firstKey) { continue; } secondKey = currentKey; if (secondKey - firstKey < minDifference) { minDifference = secondKey - firstKey; amountOfNumbers = array.get(firstKey) + array.get(secondKey); } else if (secondKey - firstKey == minDifference) { if (array.get(firstKey) + array.get(secondKey) > amountOfNumbers) { amountOfNumbers = array.get(firstKey) + array.get(secondKey); } } // one step ahead firstKey = secondKey; } boolean zeroDifferenceRequired = minDifference != 1; if (zeroDifferenceRequired) { amountOfNumbers = 0; } for (SortedMap.Entry entry: array.entrySet()) { if (entry.getValue() > amountOfNumbers) { amountOfNumbers = entry.getValue(); } } System.out.println(amountOfNumbers); } } }