¡En un caluroso día de verano, Farmer John sirve limonada a sus $N$ vacas! Todas, numeradas $1 \dots N$, la disfrutan, pero unas más que otras. La vaca $i$ acepta esperar detrás de como máximo $w_i$ vacas. Están en el campo, pero acudirán al puesto al sonar el cencerro. Todas llegarán antes de servir y nunca dos a la vez. La vaca $i$ se une si y solo si ya hay como máximo $w_i$ vacas en la cola.
FJ quiere preparar limonada por adelantado sin desperdiciarla. El número que se une depende del orden de llegada. Encuentra el mínimo posible.
Entrada
La primera línea contiene $N$, y la segunda $N$ enteros $w_1, w_2, \dots, w_N$ separados por espacios. Se garantiza $1 \leq N \leq 10^5$ y $0 \leq w_i \leq 10^9$ para toda vaca $i$.
Salida
Escribe el mínimo número de vacas que se unen entre todos los órdenes posibles.
Ejemplos
Entrada 1
5
7 1 400 2 2
Salida 1
3
Nota
Aquí el mínimo es $3$. Llegan primero las vacas con $w=7$ y $w=400$ y esperan. La de $w=1$ se marcha porque hay $2$ esperando. Luego llegan las de $w=2$: una se queda y otra se marcha.
Autor del problema: Dhruv Rohatgi