tło
Numer Ramanujana, 1729, jest nazywany numerem taksówki z powodu (prawdopodobnie apokryficznej) opowieści o tym, jak Hardy wsiada do taksówki i odwiedza Ramanujana w szpitalu o tym numerze, co wydawało mu się mdłe.
Od tego czasu znany jest jako najbardziej znany z klasy liczb całkowitych zwanych „liczbami taksówek”, które można wyrazić jako sumę dwóch n-tych potęg (dodatnich liczb całkowitych) na dwa (lub czasami „k”) różne sposoby.
1729 jest najmniejszą liczbą naturalną wyrażaną jako suma 2 kostek na 2 różne sposoby, co czyni ją pierwszą liczbą taksówek „3,2” („n, k” jest ogólna).
Wyzwanie
Biorąc pod uwagę liczbę, zdecyduj, czy jest to wtórna liczba taksówek „3,2” - co oznacza, że spełnia to samo ograniczenie co 1729 (2 unikalne sumy kostek), ale nie musi być najmniejszą taką liczbą całkowitą z „3 , Klasa 2 "(oczywiście 1729).
Przykładowe przypadki:
1729 = 10 ^ 3 + 9 ^ 3 = 12 ^ 3 + 1 ^ 3
4104 = 15 ^ 3 + 9 ^ 3 = 16 ^ 3 + 2 ^ 3
13832 = 2 ^ 3 + 24 ^ 3 = 18 ^ 3 + 20 ^ 3
Jak również 20683, 32832, 39312 ...
Punktacja
To jest golf golfowy , więc wygrywa najkrótsza odpowiedź w każdym języku.
Szorstki kod Matlab, aby znaleźć inne przypadki brutalną siłą:
for k = 1729:20000
C = sum(round(mod(real((k-[1:ceil(k^(1/3))].^3).^(1/3)),1)*10000)/10000==1);
if C > 1
D = (mod(C,2)==0)*C/2 + (mod(C,2)==1)*((C+1)/2);
disp([num2str(k),' has ',num2str(D),' solns'])
end
end