Reden wir über Teiler ...
Ohne perfekte Quadrate (für einen Moment) können alle positiven ganzen Zahlen als das Produkt von 2 ihrer Teiler ausgedrückt werden . Kurzes Beispiel für 126
: Hier sind alle Teiler von126
Wie Sie sehen, können alle Teiler gekoppelt werden. Wir werden die Divisor-Paare wie folgt bezeichnen :
[1, 126], [2, 63], [3, 42], [6, 21], [7, 18], [9, 14]
Für diese Herausforderung benötigen wir nur das letzte Paar dieser Liste (das mittlere Paar des Bildes):
[9,14]
Wir nennen dieses Paar das MaxMin-Divisor-Paar .
Der Unterschied des MaxMin-Divisor-Paares (DMDP) ist der Unterschied der beiden Elemente des Paares, wofür [9,14]=5
Ein weiteres Beispiel ist 544
. Die Teiler sind:
[1, 2, 4, 8, 16, 17, 32 , 34, 68, 136, 272, 544]
und DMDP (544) = 15 weil32-17=15
Was ist mit den perfekten Quadraten ? Alle perfekten Quadrate haben DMDP = 0
Nehmen wir zum Beispiel 64
Divisoren
{1, 2, 4, 8 , 16, 32, 64}
Wie Sie in diesem Fall sehen können, ist das MaxMin-Divisor-Paar, mit [8,8]
dem DMDP=0
wir fast fertig sind.
Die Herausforderung
Gegeben eine ganze Zahl n>0
, Ausgabe wie viele ganze Zahlen kleiner als oder gleich 10000
, haben DMDP weniger als n
Testfälle
Eingabe -> Ausgabe
1->100 (those are all the perfect squares)
5->492
13->1201
369->6175
777->7264
2000->8478
5000->9440
9000->9888
10000->10000
20000->10000
Dies ist Code-Golf. Die kürzeste Antwort in Bytes gewinnt .
10000
als zweiten, variablen Eingang zu haben?