10324 Zeros and Ones
http://acm.uva.es/p/v103/10324.htmlEste problema se resuelve con una sencilla programacion dinamica.
Se hace un array para guardar los numeros de veces que cambia de 1 a 0 y viceversa.
Se detecta el valor del primer elemento, anotandose esa posicion como de 0 cambios, y se calcula los cambios de cada posicion: Si no cambia, se almacena el valor de numero de cambios de la anterior posicion. Si cambia,se almacena el valor de la posicion anterior mas uno.
Asi para comparar si hay cambios entre dos posiciones, solo hay que ver si sus valores en el vector de cambios son iguales o no