Carmichael věta dokazuje, že každé Fibonacciho číslo po 144 má alespoň jedno prvočíslo dělitelem, že není rozdělit dřívější Fibonacciho číslo.
Není mnoho Fibonacciho čísla pod 10^18; méně než 90.
Aby se pole všech Fibonacciho čísla, < = 10^18.
Vzhledem k tomu vstup n, který je produktem Fibonacciho čísla, jeho rozklad do Fibonacciho čísel, musí obsahovat každé Fibonacciho číslo výše 144, který rozděluje to, opakovat tolikrát, kolikrát, jak se to rozděluje.
Jít přes Fibonacciho čísla v sestupném pořadí a držet dělení n takové číslo, které dělí to, až se dostanete na 144.
Teď musíme být opatrní, protože dvě Fibonacciho čísla nemají žádnou hlavní faktory, které nejsou vidět v předcházejících Fibonacciho čísel. Tyto jsou 8 a 144. Protože 8 je 2^3 a 2 je Fibonacciho číslo, můžete to učinit vaše číslo unfactorable do Fibonacciho čísla tím, že 8. V rámci optimalizace, budete vždy zvolit 8.
Pak 144 není jediným faktorem, který možná budete muset odmítnout pro menší faktor. To může dojít pouze v případě, 34 nebo 21 jsou faktory, a 144 eliminuje potřeba 2 nebo 3.
34 = 2 * 17, 21 = 3 * 7
To byl rozvláčný, ale to nás dostane na jednoduchý přístup.
Jít přes Fibonacciho čísla, < = n v sestupném pořadí, až se dostanete k 144, pak přeskočit na 34, pak v 21, pak zpět na 144 a sestupuje dolů do 2.
To vám dá optimální rozklad pod zvláštní bodovací systém.
----- pořadí -----
[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]