Сегодня на ферме жаркий летний день и Фермер Джон развозит лимонад своим
\(N\) коровам. Все \(N\) коров (последовательно пронумерованных \(1 \dots N\))
любят лимонад, но некоторые из них любят больше чем другие. В частности,
корова \(i\) готова подождать не более \(w_i\) коров прежде чем получит свой
лимонад. Прямо сейчас все \(N\) коров на полях, но вскоре ФД позвонит в колокол
и коровы побегут к нему. Все прибудут до того, как он начнёт раздавать
лимонад, но никакие две коровы не прибудут в одно и то же время.
Более того, когда корова \(i\) прибывает, она становится в очередь
если и только если в очереди находится не более \(w_i\) коров.
ФД хочет подготовить заранее некоторое количество лимонада, но он не хочет
быть нерасчётливым. Количество коров, которые станут в очередь зависит от
порядка, в котором они прибывают. Помогите ему определить минимальное
количество коров, которые станут в очередь.
ФОРМАТ ВВОДА (файл lemonade.in):
Первая строка ввода содержит \(N\), вторая строка содержит \(N\) разделённых
пробелом целых чисел \(w_1, w_2, \dots, w_N\). Гарантируется, что
\(1 \leq N \leq 10^5\), и \(0 \leq w_i \leq 10^9\) для каждой коровы \(i\).
ФОРМАТ ВЫВОДА (файл lemonade.out):
Выведите минимальное количество коров, которые могут стать в очередь,
среди всех возможных порядков прибытия коров.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
5 7 1 400 2 2
|
3
|