Zadanie
Biorąc pod uwagę dwie liczby całkowite d
i n
, znajdź liczbę sposobów wyrażenia n
jako sumę d
kwadratów. Oznacza to, n == r_1 ^2 + r_2 ^2 + ... + r_d ^2
że r_m
jest to liczba całkowita dla wszystkich liczb całkowitych 1 ≤ m ≤ d
. Zauważ, że zamiana dwóch różnych wartości (np. r_1
I r_2
) jest uważana za inną niż oryginalne rozwiązanie.
Na przykład liczbę 45 można zapisać jako sumę 2 kwadratów 8 różnych sposobów:
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
Zasady
- Wbudowane rozwiązania są dozwolone, ale niekonkurujące (ahem, Mathematica )
- Standardowe luki są również zabronione.
- Wejścia mogą być odwrócone.
Przykład I / O
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
To jest golf golfowy , więc wygrane są przy użyciu najmniejszej ilości bajtów!
1, 0
testu, istnieje 1
sposób, aby wyrazić 0
jako sumę 1
kwadratu: 0 == 0^2
.