Primos que contienen al 2016
Definir la sucesión
1 |
primosCon2016 :: [Integer] |
tal que sus elementos son los números primos que contienen al 2016. Por ejemplo,
1 2 |
take 5 primosCon2016 == [20161,120163,120167,201611,201623] primosCon2016 !! 111 == 3020167 |
Soluciones
1 2 3 4 5 6 |
import Data.List (isInfixOf) import Data.Numbers.Primes (primes) primosCon2016 :: [Integer] primosCon2016 = [x | x <- primes, isInfixOf "2016" (show x)] |
Referencias
Basado en el artículo Prime numbers containing 2016 del blog Fun With Num3ers.
Mejor que revisar todos los primos resulta enumerar aquellos impares que contienen 2016 (de los que también podrían eliminarse los 5).