divizori


Timp maxim de execuţie/test:
0.1 secunde
Memorie totală disponibilă/stivă:
2MB/1 MB

Gigel, mare amator de numere, a observat un lucru curios. Împărţindu-l pe 25 succesiv la 2, 3, 4 a obţinut de fiecare dată restul 1. Apoi la împărţirea cu 5 restul i-a dat 0 (normal!!!). Curios din fire, Gigel a mai căutat şi alte numere cu proprietate asemănătoare şi l-a găsit pe 63. Acesta, împărţit succesiv la 4, 5, 6 dă de fiecare dată restul 3 şi împărţit la 7 dă restul 0. Şi atunci Gigel şi-a pus problema astfel: dacă am două numere prime m şi k, care este cel mai mic număr natural N care are proprietatea că împărţit succesiv la k+1, k+2, ..., m-1 dă de fiecare dată acelaşi rest k, şi împărţit la m dă restul 0?

Cerinţă

Scrieţi un program care să determine numărul N cerut.

Date de intrare

Fişierul de intrare divizori.in conţine pe prima linie numerele naturale m şi k, separate printr-un spaţiu.

Date de ieşire

Fişierul de ieşire divizori.out va conţine pe prima linie numărul natural N cerut.

Restricţii

  • 1 <= m, k < 32
  • k+2 < m
  • m, k - numere prime

Exemple

divizori.in divizori.out Explicaţii
5 1
25 25 = 12 * 2 + 1
25 = 8 * 3 + 1
25 = 6 * 4 + 1
25 = 5 * 5 + 0

divizori.in divizori.out Explicaţii
7 3 63 63 = 15 * 4 + 3
63 = 12 * 5 + 3
63 = 10 * 6 + 3
63 = 9 * 7 + 0
prof. Marinel Şerban
Colegiul Naţional „Emil Racoviţă” Iaşi
marinel_serban@yahoo.com