Primeros y últimos elementos
Definir la función
extremos :: Int -> [a] -> [a]
tal que (extremos n xs)
es la lista formada por los n
primeros elementos de xs
y los n
finales elementos de xs
. Por ejemplo,
extremos 3 [2,6,7,1,2,4,5,8,9,2,3] == [2,6,7,9,2,3]
Soluciones
A continuación se muestran las soluciones en Haskell y las soluciones en Python.
Soluciones en Haskell
extremos :: Int -> [a] -> [a] extremos n xs = take n xs ++ drop (length xs - n) xs
El código se encuentra en GitHub.
Soluciones en Python
from typing import TypeVar A = TypeVar('A') def extremos(n: int, xs: list[A]) -> list[A]: return xs[:n] + xs[-n:]
El código se encuentra en GitHub.