#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main(){ int n; cin >> n; vector v(n); vector m(100); for(int a_i = 0;a_i < n;a_i++){ cin >> v[a_i]; } int maxapp2 = 0; int curmax = 0; sort(v.begin(), v.end()); set s(v.begin(), v.end()); vector aa(s.begin(), s.end()); for(int i = 0; i < aa.size()-1; i++){ if(aa[i+1] - aa[i] == 1) { curmax = count(v.begin(), v.end(), aa[i]) + count(v.begin(), v.end(), aa[i+1]); if(curmax >= maxapp2) maxapp2 = curmax; } } for(int i = 0; i < n; i++) { m[v[i]]++; } int maxapp = 0; int bign = 0; for(int i = 0; i < 100; i++) { if(maxapp < m[i]) { maxapp = m[i]; bign = i; } } int a = 0; int b = 0; a = count(v.begin(), v.end(), bign - 1); b = count(v.begin(), v.end(), bign + 1); if(a < b) maxapp += b; else maxapp += a; if(maxapp2 > maxapp) cout << maxapp2; else cout << maxapp; return 0; }