Sustitución de pares de elementos consecutivos iguales
Dada una lista xs se reemplaza el primer par de elementos consecutivos iguales x por x+1 y se repite el proceso con las listas obtenidas hasta que no haya ningún par de elementos consecutivos iguales. Por ejemplo, para [5,2,1,1,2,2] se tiene el siguiente proceso
[5,2,1,1,2,2] ==> [5,2,2, 2,2] ==> [5,3, 2,2] ==> [5,3, 3] ==> [5,4]
Definir la función
sustitucion :: [Int] -> [Int]
tal que (sustitucion xs) es la lista obtenida aplicándole a xs el proceso anterior. Por ejemplo,
sustitucion [5,2,1,1,2,2] == [5,4] sustitucion [4,2,1,1,2,2] == [5] sustitucion [4,5,11,2,5,7,2] == [4,5,11,2,5,7,2] sustitucion (1:[1..2*10^6]) == [2000001] length (sustitucion [1..2*10^6]) == 2000000


