급식 시간이 시작되었다!
학생 $N$명이 한 줄로 서서 배식을 받고 급식실에 앉는다. 배식은 $1$분 만에 완료되고, 모든 학생은 배식이 완료되자마자 급식실 자리에 앉는다. 즉, 줄의 맨 앞에서 $i (1 \leq i \leq N)$번째에 위치한 학생은 급식 시간이 시작된 지 $i$분 만에 자리에 앉는다.
또한 학생마다 밥을 먹는 데에 걸리는 시간이 정해져 있다. 어떤 학생이 $A$분에 자리에 앉았고, $B$분 동안 밥을 먹는다면, 그 학생은 급식 시간이 시작된 지 $A$분, $A+1$분, $\cdots$, $A+B-1$분이 지난 시점에는 앉아 있고, $A+B$분이 지난 시점에 자리에서 일어나 급식실을 떠난다.
대곽이는 모든 학생과 친하기 때문에 자신이 원하는 순서대로 줄을 세울 수 있다. 또한 대곽이는 각 학생이 밥을 먹는 데에 걸리는 시간을 알고 있는데, $i (1 \leq i \leq N)$번째 학생은 $b_i$분 동안 밥을 먹는다는 사실을 알고 있다.
어떤 줄 세우기 순서에 대하여, 임의의 양의 정수 $t$에 대하여 급식 시간이 시작된 지 $t$분이 지난 시점에 자리에 앉아 있는 학생 수의 최댓값을 혼잡도라고 정의한다. 정확히 $t$분이 지난 시점에 일어나는 학생은 세지 않는다.
장난을 치는 것을 좋아하는 대곽이는 영양사 선생님이 정신없게 하기 위해서 모든 학생을 적당한 순서로 줄을 세워서 혼잡도가 최대한 커지도록 하고 싶다. 대곽이를 위해 가능한 최대 혼잡도를 구해보자.
첫째 줄에는 학생의 수를 나타내는 양의 정수 $N$이 주어진다. $(1 ≤ N ≤ 300 \, 000)$
둘째 줄에는 각 학생이 밥을 먹는 시간을 나타내는 $N$개의 양의 정수 $b_i$가 공백으로 구분되어 주어진다. $(1 ≤ b_i ≤ 1 \, 000 \, 000 \, 000)$
가능한 최대 혼잡도를 나타내는 하나의 정수를 출력한다.