In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you are familiar with IRC chat, the support team is also reachable on PIRC network (irc.pirc.pl
) in #szkopul
channel. If you are not, just use email.
Please do not ask us things like "how to solve task XYZ?".
Please remember that the support team has to sleep sometimes or go to work in real life.
W tym zadaniu rozważamy odległość między dodatnimi liczbami całkowitymi, zdefiniowaną w następujący sposób.
Przez pojedynczą operację rozumiemy pomnożenie danej liczby przez liczbę pierwszą1
lub podzielenie jej przez liczbę pierwszą (o ile dzieli się ona bez reszty).
Odległość między liczbami i
, oznaczana
, to minimalna liczba operacji potrzebnych
do przekształcenia liczby
w liczbę
.
Na przykład,
.
Zauważmy, że faktycznie funkcja ma cechy odległości - dla dowolnych dodatnich
liczb całkowitych
,
i
zachodzi:
W pierwszym wierszu standardowego wejścia znajduje się jedna liczba całkowita (
).
W kolejnych wierszach znajdują się liczby
(
),
po jednej w wierszu.
W testach wartych łącznie 30% punktów zachodzi dodatkowy warunek .
Twój program powinien wypisać na standardowe wyjście dokładnie wierszy, a w każdym z nich po jednej liczbie całkowitej.
W
-tym wierszu należy wypisać najmniejsze takie
, że:
,
oraz
jest minimalne.
Dla danych wejściowych:
6 1 2 3 4 5 6
poprawną odpowiedzią jest:
2 1 1 2 1 2
Autor zadania: Wojciech Śmietanka.
1. Przypomnijmy, że liczba pierwsza to taka liczba całkowita dodatnia, która ma dokładnie dwa różne dzielniki: jedynkę i siebie samą.