<?php
$total = 30; // Всего в классе 30 человек
$skip = 5; // Считалка содержит 5 слогов
$arrayParticipants = range(1,$total); // Участники считалки от 1 до $total. Массив от 0 до $total-1 $numberWhoOutNext = $skip-1; // Кто выбывает первым
while(count($arrayParticipants)>=$skip) // Считаем пока участников больше чем слогов {
$length = count($arrayParticipants)-1; // Сколько осталось участников
for ($i = $numberWhoOutNext; $i <= $length; $i = $i + $skip)
{
unset($arrayParticipants[$i]); }
$numberWhoOutNext = $i - $length - 1; // Кто выбывает следующим
sort($arrayParticipants); // Смыкаем порочный круг }
echo "Выигрышные места: ".implode(", ",$arrayParticipants)."\n";
PD9waHAKCmVycm9yX3JlcG9ydGluZygtMSk7CgokdG90YWwgPSAzMDsgLy8g0JLRgdC10LPQviDQsiDQutC70LDRgdGB0LUgMzAg0YfQtdC70L7QstC10LoKJHNraXAgPSA1OyAvLyDQodGH0LjRgtCw0LvQutCwINGB0L7QtNC10YDQttC40YIgNSDRgdC70L7Qs9C+0LIKCiRhcnJheVBhcnRpY2lwYW50cyA9IHJhbmdlKDEsJHRvdGFsKTsgLy8g0KPRh9Cw0YHRgtC90LjQutC4INGB0YfQuNGC0LDQu9C60Lgg0L7RgiAxINC00L4gJHRvdGFsLiDQnNCw0YHRgdC40LIg0L7RgiAwINC00L4gJHRvdGFsLTEKJG51bWJlcldob091dE5leHQgPSAkc2tpcC0xOyAvLyDQmtGC0L4g0LLRi9Cx0YvQstCw0LXRgiDQv9C10YDQstGL0LwKCndoaWxlKGNvdW50KCRhcnJheVBhcnRpY2lwYW50cyk+PSRza2lwKSAgLy8g0KHRh9C40YLQsNC10Lwg0L/QvtC60LAg0YPRh9Cw0YHRgtC90LjQutC+0LIg0LHQvtC70YzRiNC1INGH0LXQvCDRgdC70L7Qs9C+0LIKewogICAgJGxlbmd0aCA9IGNvdW50KCRhcnJheVBhcnRpY2lwYW50cyktMTsgLy8g0KHQutC+0LvRjNC60L4g0L7RgdGC0LDQu9C+0YHRjCDRg9GH0LDRgdGC0L3QuNC60L7QsgoKICAgIGZvciAoJGkgPSAkbnVtYmVyV2hvT3V0TmV4dDsgJGkgPD0gJGxlbmd0aDsgJGkgPSAkaSArICRza2lwKQogICAgewogICAgICAgIHVuc2V0KCRhcnJheVBhcnRpY2lwYW50c1skaV0pOwogICAgfQogICAgJG51bWJlcldob091dE5leHQgPSAkaSAtICRsZW5ndGggLSAxOyAvLyDQmtGC0L4g0LLRi9Cx0YvQstCw0LXRgiDRgdC70LXQtNGD0Y7RidC40LwKICAgIHNvcnQoJGFycmF5UGFydGljaXBhbnRzKTsgLy8g0KHQvNGL0LrQsNC10Lwg0L/QvtGA0L7Rh9C90YvQuSDQutGA0YPQswp9CgplY2hvICLQktGL0LjQs9GA0YvRiNC90YvQtSDQvNC10YHRgtCwOiAiLmltcGxvZGUoIiwgIiwkYXJyYXlQYXJ0aWNpcGFudHMpLiJcbiI7CgoKCg==