#include #define ff first #define ss second #define pb push_back #define mp make_pair #define len(s) s.length() #define forp(i,a,b) for( i=a;i<=b;i++) #define FOR(tt,a,b) for(int tt=a;tt<=b;tt++) #define rep(i,n) for( i=0;i=0;i--) #define forn(i,a,b) for( i=a;i>=b;i--) #define all(v) v.begin(),v.end() #define b(v) v.begin() #define e(v) v.end() #define mem(n,m) memset(n,m,sizeof(n)) #define lb lower_bound #define ub upper_bound #define pii pair #define pll pair #define vii vector #define vll vector #define gl(cin,s) getline(cin,s); #define bitc(n) __builtin_popcountll(n) #define present(s,x) (s.find(x) != s.end()) #define cpresent(s,x) (find(all(s),x) != s.end()) #define tr(container, it) for(__typeof(container.begin()) it = container.begin(); it != container.end(); it++) #define boost ios_base::sync_with_stdio(0) #define MOD 1000000007 #define EPSILON 1e-9 #define PI 3.14159265358979323846 #define SIZE 100001 typedef long long ll; typedef unsigned long long ull; typedef long double ldo; typedef double db ; using namespace std; int main() { /* #ifndef ONLINE_JUDGE freopen(fi, "r", stdin); #endif */ //freopen("route.in","r",stdin); //freopen("route.out","w",stdout); //cin.ignore(); //cin.clear(); boost; //cin.tie(0); //cout<<"Case #"< m; cin>>n; forp(i,1,n){ cin>>a[i]; m[a[i]]++; } int ans=0; tr(m,it){ ans = max(ans,it->ss); int temp = it->ss; int temp2= it->ff; it++; if(it!=m.end() and abs(it->ff-temp2)<=1) ans = max(ans,temp+it->ss); it--; } cout<