Tarea
Dados dos enteros d
y n
, encuentre el número de formas de expresar n
como una suma de d
cuadrados. Es decir, n == r_1 ^2 + r_2 ^2 + ... + r_d ^2
tal que r_m
es un entero para todos los enteros 1 ≤ m ≤ d
. Tenga en cuenta que intercambiar dos valores diferentes (por ejemplo, r_1
y r_2
) se considera diferente de la solución original.
Por ejemplo, el número 45 se puede escribir como una suma de 2 cuadrados 8 formas diferentes:
45
== (-6)^2 + (-3)^2
== (-6)^2 + 3^2
== (-3)^2 + (-6)^2
== (-3)^2 + 6^2
== 3^2 + (-6)^2
== 3^2 + 6^2
== 6^2 + (-3)^2
== 6^2 + 3^2
Reglas
- Las soluciones integradas están permitidas pero no son competitivas (ejem, Mathematica )
- Las lagunas estándar también están prohibidas.
- Las entradas pueden invertirse.
Ejemplo de E / S
In: d, n
In: 1, 0
Out: 1
In: 1, 2
Out: 0
In: 2, 2
Out: 4
In: 2, 45
Out: 8
In: 3, 17
Out: 48
In: 4, 1000
Out: 3744
In: 5, 404
Out: 71440
In: 11, 20
Out: 7217144
In: 22, 333
Out: 1357996551483704981475000
Este es el código de golf , por lo que las presentaciones que utilizan la menor cantidad de bytes ganan.
1, 0
caso de prueba, no hay 1
manera de expresar 0
como una suma de 1
cuadrados: 0 == 0^2
.