La fila de la limonada#10385

La fila de la limonada

1 segundo
128 megabytes
Media

Es un caluroso día de verano en la granja, ¡y el granjero John está sirviendo limonada a sus vacas! A todas las vacas (convenientemente numeradas ) les gusta la limonada, pero a algunas les gusta más que a otras. En particular, la vaca está dispuesta a esperar en la fila detrás de a lo sumo w_i vacas para conseguir su limonada. En este momento, todas las vacas están en los campos, pero tan pronto como el granjero John toque su cencerro, todas correrán de inmediato hacia su puesto de limonada. Todas llegarán antes de que él comience a servir la limonada, y no habrá dos vacas que lleguen al mismo tiempo. Además, cuando la vaca llega, se une a la fila si y solo si hay a lo sumo w_i vacas ya en ella.

El granjero John quiere preparar limonada con antelación, pero no quiere ser derrochador. El número de vacas que se unen a la fila puede depender del orden en que lleguen. Ayúdalo a encontrar el mínimo número posible de vacas que se unen a la fila.

Entrada

La primera línea contiene un entero n~(1 \le n \le 10^5). La segunda línea contiene enteros w_1, w_2, \ldots, w_n~(0 \le w_i \le 10^9).

Salida

Imprime un entero — el mínimo número de vacas que se unen a la fila, sobre todos los posibles órdenes en que las vacas pueden llegar.

Ejemplos

Ejemplo 1

Loading
Loading

Nota

En este ejemplo, solo vacas pueden terminar en la fila, y este es el menor número posible. Supongamos que las vacas con w = 7 y w = 400 llegan primero y se unen a la fila. Luego llega la vaca con w = 1 y se va, ya que ya hay vacas en la fila. Finalmente, llegan las dos vacas con w = 2: la primera se une a la fila, y la segunda se va.