fork download
  1. <?php
  2.  
  3.  
  4. $total = 30;
  5. $skip = 5;
  6.  
  7. if ($skip > $total) {
  8.  
  9. echo "Задача не имеет решения. Проверьте введёные данные.";
  10. }
  11.  
  12. for ($participant = 0; $participant < $total; $participant++) {
  13. $seats[$participant] = $participant + 1;
  14. }
  15.  
  16. for ($participant = 0; $total >= $skip; $total--) {
  17.  
  18. if ($participant <= $total - $skip) {
  19.  
  20. $participant = $participant + $skip - 1;
  21.  
  22. unset($seats[$participant]);
  23. sort($seats);
  24.  
  25. continue;
  26. }
  27.  
  28. $placeInNewCircle = -1;
  29. for ($PlacesToEnd = $skip; $PlacesToEnd > 0; $PlacesToEnd--) {
  30.  
  31. $placeInNewCircle++;
  32. if ($participant + $PlacesToEnd - 1 == $total) {
  33.  
  34. $participant = $placeInNewCircle;
  35. break;
  36. }
  37. }
  38.  
  39. unset($seats[$participant]);
  40. sort($seats);
  41. }
  42.  
  43. echo "Выигрышные места: ".implode(", ", $seats);
  44.  
Success #stdin #stdout 0.03s 52480KB
stdin
Standard input is empty
stdout
Выигрышные места: 3, 4, 14, 27