Primer elemento repetido
Definir la función
primerRepetido :: Eq a => [a] -> Maybe a
tal que (primerRepetido xs) es justo el primer elemento repetido de la lista xs o Nothing si no tiene elementos repetidos. Por ejemplo,
primerRepetido [3,7,5,7,2] == Just 7 primerRepetido [3,9,5,6,2] == Nothing
Soluciones
primerRepetido :: Eq a => [a] -> Maybe a primerRepetido xs = aux xs [] where aux [] _ = Nothing aux (x:xs') ys | x `elem` ys = Just x | otherwise = aux xs' (x:ys)