Descomposiciones en sumas de cuatro cuadrados
Definir la función
descomposiciones :: Int -> [[Int]]
tal que (descomposiciones x) es la lista de las listas de los cuadrados de cuatro números enteros positivos cuya suma es x. Por ejemplo.
λ> descomposiciones 4 [[1,1,1,1]] λ> descomposiciones 5 [] λ> descomposiciones 7 [[1,1,1,4],[1,1,4,1],[1,4,1,1],[4,1,1,1]] λ> descomposiciones 10 [[1,1,4,4],[1,4,1,4],[1,4,4,1],[4,1,1,4],[4,1,4,1],[4,4,1,1]] λ> descomposiciones 15 [[1,1,4,9],[1,1,9,4],[1,4,1,9],[1,4,9,1],[1,9,1,4],[1,9,4,1], [4,1,1,9],[4,1,9,1],[4,9,1,1],[9,1,1,4],[9,1,4,1],[9,4,1,1]] λ> length (descomposiciones 50000) 5682


