<?php
 
error_reporting(-1);
mb_internal_encoding('utf-8');
 
$total = 30;
$skip = 5;

if ($skip > $total) {

	echo "Задача не имеет решения. Проверьте введёные данные.";
	exit;
}
 
for ($participant = 0; $participant < $total; $participant++) {
	$seats[$participant] = $participant + 1;
}
 
for ($participant = 0; $total >= $skip; $total--) {

    if ($participant <= $total - $skip) {

    	$participant = $participant + $skip - 1;

        unset($seats[$participant]);
        sort($seats);  

        continue;     
    }

	$placeInNewCircle = -1;
    for ($PlacesToEnd = $skip; $PlacesToEnd > 0; $PlacesToEnd--) {
        
        $placeInNewCircle++;
    	if ($participant + $PlacesToEnd - 1 == $total) {

            $participant = $placeInNewCircle;
            break;
    	}
    }
 
    unset($seats[$participant]);
    sort($seats);
}

echo "Выигрышные места: ".implode(", ", $seats);
