Ir al contenido principal

Actualización de «Posición del primer falso en un vector»

He actualizado las soluciones del ejercicio «Posición del primer falso en un vector» cuyo enunciado es


Definir la función

posicion :: Array Int Bool -> Maybe Int

tal que (posicion v) es la menor posición del vector de booleanos v cuyo valor es falso y es Nothing si todos los valores son verdaderos. Por ejemplo,

posicion (listArray (0,4) [True,True,False,True,False]) == Just 2
posicion (listArray (0,4) [i <= 2 | i <- [0..4]])       == Just 3
posicion (listArray (0,4) [i <= 7 | i <- [0..4]])       == Nothing

Nota: Puedes consultar las soluciones aquí.