Carmichael je vety preukáže, že každý Fibonacciho čísla po 144 má aspoň jedno prvočíslo deliteľ, že nemá rozdeliť staršiu Fibonacciho číslo.
Nie je veľa Fibonacciho čísla do 10^18; menej ako 90.
Aby sa pole všetkých Fibonacciho čísla <= 10^18.
Vzhľadom na vstup n, ktoré je produktom Fibonacciho čísla, jeho factorization do Fibonacciho čísla musí obsahovať každý Fibonacciho číslo vyššie 144, ktorý rozdeľuje to, opakuje toľkokrát, koľkokrát je to deliť sa.
Prejsť vašich Fibonacciho čísla zostupne a udržať delení n pri každej takejto číslo, ktoré delí to, až sa dostanete na 144.
Teraz musíme byť opatrní, pretože dve Fibonacciho čísla nemajú primárnych faktorov, ktoré nie je vidieť v predchádzajúcich Fibonacciho čísla. Tieto sú 8 a 144. Od 8 je 2^3 a 2 je Fibonacciho číslo, môžete si spôsobiť, že vaše číslo unfactorable do Fibonacciho čísla, berúc 8. Pod optimalizácia, budete vždy vybrať 8.
Potom 144 je jediný faktor, ktorý by ste mohli potrebovať, ak chcete odmietnuť pre menšie faktor. To sa môže stať iba v prípade, 34 21 sú faktory, a 144 sa eliminuje potrebné 2 alebo 3.
34 = 2 * 17, 21 = 3 * 7
Že bol rozvláčny, ale dostane sa nám na jednoduchý prístup.
Prejsť Fibonacciho čísla <= n v zostupnom poradí, kým sa dostanete na 144, potom prejdite na 34, potom 21, a potom späť na 144 a zostupné dole: 2.
To vám poskytne optimálne factorization podľa vašej divný bodovací systém.
----- toto poradie -----
[679891637638612258, 420196140727489673, 259695496911122585, 160500643816367088, 99194853094755497, 61305790721611591, 37889062373143906, 23416728348467685, 14472334024676221, 8944394323791464, 5527939700884757, 3416454622906707, 2111485077978050, 1304969544928657, 806515533049393, 498454011879264, 308061521170129, 190392490709135, 117669030460994, 72723460248141, 44945570212853, 27777890035288, 17167680177565, 10610209857723, 6557470319842, 4052739537881, 2504730781961, 1548008755920, 956722026041, 591286729879, 365435296162, 225851433717, 139583862445, 86267571272, 53316291173, 32951280099, 20365011074, 12586269025, 7778742049, 4807526976, 2971215073, 1836311903, 1134903170, 701408733, 433494437, 267914296, 165580141, 102334155, 63245986, 39088169, 24157817, 14930352, 9227465, 5702887, 3524578, 2178309, 1346269, 832040, 514229, 317811, 196418, 121393, 75025, 46368, 28657, 17711, 10946, 6765, 4181, 2584, 1597, 987, 610, 377, 233, 34, 21, 144, 89, 55, 13, 8, 5, 3, 2]