#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main() {
    int n;
    cin>>n;
    set<int>tp;
    map<int,int>cnts;
    for(int i=0;i<n;i++){
        int t;
        cin>>t;
        cnts[t]++;
        tp.insert(t);
    }
    int cnt=0;
    while(!tp.empty()){
        deque<int>op;
        set<int>::iterator it;
        it=tp.begin();
        op.push_back(*it);
        int le=*it;
        it++;
        for(;it!=tp.end();++it){
            if(*it-le!=1){
                break;
            }
            le=*it;
            op.push_back(*it);
        }
        int _min=1e9+10;
        for(int i=0;i<op.size();i++){
            _min=min(_min,cnts[op[i]]);
        }
        for(int i=0;i<op.size();i++){
            cnts[op[i]]-=_min;
            if(cnts[op[i]]==0){
                tp.erase(op[i]);
            }
        }
        cnt+=_min;
    }
    cout<<cnt;
}

非常简单的小题,这么做其实有亿点繁琐了