La Oruga con Frío


Submit solution

Points: 100 (partial)
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
Ada, BrainF***, C, C#, C++, Dart, Go, Java, JS, Kotlin, Lua, Pascal, Prolog, Python, Swift, VB

Una oruga tiene su cuerpo compuesto de N segmentos numerados desde 1 hasta N. Cada segmento está marcado con un número entero; dos o más segmentos consecutivos pueden unirse en un mismo segmento si sus marcas son iguales y la marca de este segmento convertirse en la suma de las marcas de los segmentos que se unieron. Cada vez que se unen los segmentos, en la oruga encogida los segmentos se renumeran desde el principio hasta el último segmento.

Cuando hace mucho frío la oruga necesita encogerse siguiendo el procedimiento expresado anteriormente de tal manera que la oruga quede encogida en la mínima cantidad de segmentos.

Hacer un programa que calcule la mínima cantidad de segmentos después de encogerse la oruga, dado la cantidad de segmentos de la misma y el valor de la marca de cada segmento.

Entrada

Línea 1: N (1 \leq N \leq 200), cantidad de segmentos de la oruga.

Línea 2...N+1: En cada una de estas líneas se escribirá un valor M_i (-10000 \leq M_i \leq 10000) el cual representa la marca del segmento i.

Salida

Línea 1: LM, la cantidad mínima de segmentos de la oruga después que terminó de encogerse.

Ejemplo de Entrada

12
2
2
2
2
2
3
3
5
5
10
5
5

Ejemplo de Salida

3

Explicación

Distribución de las marcas de la oruga en cada paso, los números que aparecen en negritas corresponden a las marcas de los segmentos que se unieron.

Descripcion

Comments

There are no comments at the moment.