Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024

2020-2022 2023 Regulations Schedule RODO info Ranking

Problem description


Ulubione liczby pierwsze
(ulubione-liczby-3)
Memory limit: 64 MB
Time limit: 2.50 s

  Jasio napisal na tablicy swoją ulubioną liczbę pierwszą. W jednym ruchu wolnu mu zamienić jedną jej cyfrę na jakąś inną. Wolno mu przy tym tworzyć zera wiodące, jeśli chce, jednak umówił się ze sobą, że po wykonaniu takiej operacji nadal chce mieć na tablicy liczbę pierwszą. Nie wolno mu dopisywać nowych cyfr. Jasio zastanawia się, czy może za pomocą ciągu takich operacji doprowadzić do sytuacji, w której na tablicy znajdzie się ulubiona liczba Małgosi. A jeśli się da - dobrze byłoby wiedzieć w ilu ruchach minimalnie można do tego doprowadzić. Nie interesują go przy tym ciągi składające się z więcej niż czterech ruchów. Dla niego więcej niż cztery ruchy to tak jakby się nie dało, bo więcej nie zapamięta. Pomóż mu!
  Napisz program, który: wczyta ulubione liczby Jasia i Małgosi, wypisze minimalną liczbę zmian pojedynczej cyfry (zgodnie z regułami opisanymi powyżej), które doprowadzają do uzyskania liczby Małgosi z początkowej liczby Jasia i wypisze wynik na standardowe wyjście.

Wejście

W pierwszym (jedynym) wierszu wejścia znajdują się dwie liczby naturalne N i M oddzielone pojedynczymi odstępami i oznaczające ulubionę liczbę Jasia oraz ulubioną liczbę Małgosi.

Wyjście

W pierwszym (jedynym) wierszu wyjścia powinna znaleźć się jedna liczba całkowita - minimalna liczba ruchów niezbędna do uzyskania liczby Małgosi.
W przypadku, gdy uzyskanie liczby Małgosi jest niemożliwe lub wymaga więcej niż czterech ruchów należy zamiast tego wypisać NIE.

Ograniczenia

1 ≤ N, M < 109

Przykład

Input Output
17 31
2