U fabrici radi n radnika raspoređenih u krug, obeleženih brojevima od 0 do n − 1. Direktor šalje poruku radniku broj 0, koji je prosleđuje m mesta unapred (kružno). Svaki radnik koji primi poruku prosleđuje je dalje m mesta, ali samo onim radnicima koji još nisu završili smenu. Radnici završavaju smenu redom kojim primaju poruku, čim radnik primi poruku, njegova smena se završava i on ispada iz kruga. Na početku, 0-ti radnik je samo prenosilac poruke, tj. započinje krug završavanja smene. Odredi koja tri radnika poslednja završavaju smenu (od trećeg do poslednjeg). Složenost algoritma treba da bude do O(n · m).
U prvoj liniji nalazi se broj radnika n(3 ≤ n ≤ 50000), a u drugoj korak prosleđivanja m (1 ≤ m ≤ n).
Ispisati 3 broja, treći, drugi i poslednji radnik koji završava smenu (od trećeg poslednjeg do poslednjeg).
5 3
0 2 4
Redosled završavanja smena: 3, 1, 0, 2, 4, tj. poslednja tri su 0, 2 i tada ostaje 4 koji završava poslednji.