Pitagorasa potrójny jest dodatnią liczbą całkowitą do rozwiązania równania:
Potrójna potrójna to dodatnia liczba całkowita rozwiązania równania:
Gdzie Δn znajduje n-tą liczbę trójkątną . Wszystkie trójki trithagorejskie są również rozwiązaniami równania:
Zadanie
Biorąc pod uwagę dodatnią liczbę całkowitą c
, wyprowadzaj wszystkie pary dodatnich liczb całkowitych a,b
tak, że suma a
th i b
th liczb trójkątnych jest c
th liczbą trójkątną. Możesz wyprowadzać pary w dowolny dogodny sposób. Każdą parę powinieneś wydać tylko raz.
To jest golf golfowy
Przypadki testowe
2: []
3: [(2, 2)]
21: [(17, 12), (20, 6)]
23: [(18, 14), (20, 11), (21, 9)]
78: [(56, 54), (62, 47), (69, 36), (75, 21), (77, 12)]
153: [(111, 105), (122, 92), (132, 77), (141, 59), (143, 54), (147, 42), (152, 17)]
496: [(377, 322), (397, 297), (405, 286), (427, 252), (458, 190), (469, 161), (472, 152), (476, 139), (484, 108), (493, 54), (495, 31)]
1081: [(783, 745), (814, 711), (836, 685), (865, 648), (931, 549), (954, 508), (979, 458), (989, 436), (998, 415), (1025, 343), (1026, 340), (1053, 244), (1066, 179), (1078, 80), (1080, 46)]
1978: [(1404, 1393), (1462, 1332), (1540, 1241), (1582, 1187), (1651, 1089), (1738, 944), (1745, 931), (1792, 837), (1826, 760), (1862, 667), (1890, 583), (1899, 553), (1917, 487), (1936, 405), (1943, 370), (1957, 287), (1969, 188)]
2628: [(1880, 1836), (1991, 1715), (2033, 1665), (2046, 1649), (2058, 1634), (2102, 1577), (2145, 1518), (2204, 1431), (2300, 1271), (2319, 1236), (2349, 1178), (2352, 1172), (2397, 1077), (2418, 1029), (2426, 1010), (2523, 735), (2547, 647), (2552, 627), (2564, 576), (2585, 473), (2597, 402), (2622, 177), (2627, 72)]
9271: [(6631, 6479), (6713, 6394), (6939, 6148), (7003, 6075), (7137, 5917), (7380, 5611), (7417, 5562), (7612, 5292), (7667, 5212), (7912, 4832), (7987, 4707), (8018, 4654), (8180, 4363), (8207, 4312), (8374, 3978), (8383, 3959), (8424, 3871), (8558, 3565), (8613, 3430), (8656, 3320), (8770, 3006), (8801, 2914), (8900, 2596), (8917, 2537), (9016, 2159), (9062, 1957), (9082, 1862), (9153, 1474), (9162, 1417), (9207, 1087), (9214, 1026), (9229, 881), (9260, 451), (9261, 430), (9265, 333)]
code-golf
number-theory
Post Rock Garf Hunter
źródło
źródło
21
wyniku[(17, 12), (20, 6), (12, 17), (6, 20)]
a^3+ b^3 = c^3
. : Da^3+ b^3 = c^3
jest znany z braku rozwiązań całkowitych; patrz ostatnie twierdzenie FermataOdpowiedzi:
Mathematica,
534948 bajtówPrzykład:
źródło
MATL ,
1713 bajtówKażda para jest wyprowadzana najpierw z mniejszą liczbą.
Wypróbuj online!
Wyjaśnienie
Rozważ wejście
3
.źródło
R
zajmuje się tym)Galaretka , 12 bajtów
Wypróbuj online!
Jak to działa
źródło
Python 2, 69 bajtów
Wypróbuj online
-9 bajtów, dzięki @WheatWizard
źródło
~a*a==c*~c-~b*b
jest o bajt krótszy niż to. Wypróbuj online!Galaretka ,
1614 bajtówWypróbuj online!
To na pewno za długo ...
Wyjaśnienie:
źródło
AWK , 72 bajty
Wypróbuj online!
Dane wyjściowe to
c a1:b1 a2:b2 ...
. Łącze TIO ma 4 dodatkowe bajty,i=0;
aby umożliwić wejście wielowierszowe.To wcale nie jest wydajne, ale działa. :)
źródło
PHP, 94 bajtów
Wypróbuj online!
źródło
Haskell, 50 bajtów
Przykład użycia:
f 21
->[(17,12),(20,6)]
. Wypróbuj online!Wykorzystuje 2. równanie.
źródło
J , 35 bajtów
Wypróbuj online!
źródło
Axiom,
281204196191 bajtówtest i ungolf
źródło
CJam ,
3028 bajtówAnonimowy blok oczekujący argumentu na stosie i pozostawiający wynik na stosie.
Wypróbuj online!
Wyjaśnienie
Odniosę się do danych wejściowych jako
n
źródło
Pyth -
2321 bajtówSpróbuj
źródło
JavaScript (ES6), 83 bajty
Przypadki testowe
Pominięcie tutaj największych danych wejściowych, które zajmują zbyt dużo czasu dla fragmentu kodu.
Pokaż fragment kodu
źródło