#include #include #include #include #include #include #include int main() { int size; std::cin >> size; std::vector numbers(size); std::unordered_set distinctNum(size); std::unordered_map numCounts(size); std::unordered_set checked(size); for(int i = 0; i < size; i++) { std::cin >> numbers[i]; distinctNum.insert(numbers[i]); numCounts[numbers[i]] += 1; } int maxCount = 0; for(int i = 0; i < size; i++) { if(checked.find(numbers[i]) == checked.end()) { checked.insert(numbers[i]); if(distinctNum.find(numbers[i]-1) != distinctNum.end()) { maxCount = std::max(maxCount,numCounts[numbers[i]]+numCounts[numbers[i]-1]); } if(distinctNum.find(numbers[i]+1) != distinctNum.end()) { maxCount = std::max(maxCount,numCounts[numbers[i]]+numCounts[numbers[i]+1]); } maxCount = std::max(maxCount,numCounts[numbers[i]]); } } std::cout << maxCount; return 0; }