Optimalizacia sa robi bud optimalizaciou algoritmu, alebo optimalizaciou vnutornych cykov, alebo napisanim to v niecom low level. Prva vec viz Wikan, druha vec zbytocne milionkrat v cykle testujes 2,3,5 to snad staci raz pred cyklom, prevadzas tam cisla na stringy (OMG), pouzivaj len delenie a nic neprevadzaj na stringy, delenie je 1 alebo par CPU clockov. Prevod na string je trilion clockov. Cele to je nezmysel. A ten treti bod, da sa to napisat v assembleri, potom to bude optimalne.
P.S. stringy budes potrebovat az ked sa to cislo nezmesti do 64bitov apod, ale to zas nemozes prevadzat zo ziadneho "num", ptz sa to potom ako cislo vobec ulozit neda, a je nutne to drzat v stringu od zaciatku