/* Opening Ceremony */ /* 30.09.2014 */ /* Marek Cygan */ /* O(n log n) */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef vector VI; typedef vector < VI > VVI; typedef long long LL; typedef vector < LL > VLL; typedef vector < double > VD; typedef vector < string > VS; typedef pair PII; typedef vector VPII; typedef istringstream ISS; #define ALL(x) x.begin(),x.end() #define REP(i,n) for (int i=0; i<(n); ++i) #define FOR(var,pocz,koniec) for (int var=(pocz); var<=(koniec); ++var) #define FORD(var,pocz,koniec) for (int var=(pocz); var>=(koniec); --var) #define FOREACH(it, X) for(__typeof((X).begin()) it = (X).begin(); it != (X).end(); ++it) #define PB push_back #define PF push_front #define MP(a,b) make_pair(a,b) #define ST first #define ND second #define SIZE(x) (int)x.size() const int N = 110 * 1010; int t[N]; int main() { int n; scanf("%d",&n); REP(i,n) scanf("%d",t+i); sort(t,t+n); int res = n; REP(i,n) res = min(res, t[i] + (n-i-1)); printf("%d\n", res); return 0; }