Sublistas con producto dado
Definir las funciones
sublistasConProducto :: Integer -> [Integer] -> [[Integer]] unifactorizables :: [Integer]
tales que
- (sublistasConProducto n xs) es la lista de las sublistas de la lista ordenada estrictamente creciente xs (cuyos elementos son enteros mayores que 1) cuyo producto es el número entero n (con n mayor que 1). Por ejemplo,
λ> sublistasConProducto 72 [2,3,4,5,6,7,9,10,16] [[2,4,9],[3,4,6]] λ> sublistasConProducto 720 [2,3,4,5,6,7,9,10,16] [[2,3,4,5,6],[2,4,9,10],[3,4,6,10],[5,9,16]] λ> sublistasConProducto 2 [4,7] [] λ> length (sublistasConProducto 1234567 [1..1234567]) 4
- unifactorizables es la lísta de los números enteros mayores que 1 que se pueden escribir sólo de una forma única como producto de enteros distintos mayores que uno. Por ejemplo,
λ> take 20 unifactorizables [2,3,4,5,7,9,11,13,17,19,23,25,29,31,37,41,43,47,49,53] λ> unifactorizables !! 300 1873