Quieren, no quieren#12343

Quieren, no quieren

1 segundo
256 megabytes
Difícil

Dado un arreglo de longitud .

Podemos realizar las siguientes dos operaciones con el arreglo:

  1. Elegir cualquier índice 1 \leq i \leq n, tal que a_i > 0, y restarle una unidad.

  2. Elegir cualquier índice 1 \leq i \leq n, tal que a_i > 0, y para todos , tal que i \leq j \leq n y a_j>0, restar (en otras palabras, restar a todos los números, comenzando desde el seleccionado hasta el final de la lista, si estos números aún no son ).

Aplicamos estas operaciones hasta que exista un índice 1 \le i \le n, tal que a_i > 0. Es decir, paramos cuando en la lista no quede ningún número que no sea igual a .

Consideramos que nos quieren, si hemos realizado un número impar de operaciones para que todos los números del arreglo sean iguales a .

Necesitamos decir si es posible hacer que nos quieran, y si es posible, cuál es la cantidad mínima de operaciones necesarias.

Entrada

La primera línea contiene un número entero (1 \le n \le 10^6) — la longitud del arreglo .

La segunda línea contiene números enteros a_1, a_2, \dots, a_n (1 \le a_i \le 10^9) — el arreglo .

Salida

Imprime en la primera línea «YES», si es posible, o «NO», si no es posible.

Si la respuesta es «YES», en la segunda línea se debe imprimir la cantidad mínima de operaciones.

Ejemplos

Ejemplo 1

Loading
Loading

Nota

En el ejemplo se pueden restar del arreglo completo veces, y luego veces en el sufijo de los últimos cuatro elementos.

Puntuación

En el problema habrá pruebas (además de los ejemplos), cada una de las cuales se evaluará con puntos.