Algoritmul, pas cu pas
Toată problema se sprijină pe o singură mărime: costul unui număr, adică cât de departe ești de cel mai apropiat prim. Un număr prim are cost (e chiar el prim), iar un număr „înconjurat" de prime are cost mic. Odată ce știm costul fiecărui număr, cele două cerințe devin simple: prima e o sumă, a doua e „ia cele mai ieftine ".
Partea frumoasă e a doua observație: între doi primi consecutivi e mereu un gol scurt (sub golul nu trece de câteva zeci). Deci toate costurile sunt numere mici — și asta ne lasă să răspundem la fiecare operație fără să sortăm nimic.