Ctrl K

Последний после прочёсываний

Средняя
Выписаны числа от 1 до n по возрастанию. Их прочёсывают проходами, пока не останется одно число. - Первый проход идёт слева направо: вычёркивается первое число, затем каждое второе из оставшихся (третье, пятое и т. д.) до конца ряда. - Второй проход идёт справа налево: вычёркивается крайнее правое число, затем каждое второе, двигаясь влево. - Дальше направления чередуются. Верните число, которое останется последним.
Пример 1
n=10 → 8

[1..10] → слева направо вычёркиваем 1, 3, 5, 7, 9: [2, 4, 6, 8, 10] → справа налево вычёркиваем 10, 6, 2: [4, 8] → слева направо вычёркиваем 4: [8].

Пример 2
n=6 → 4

[1..6] → [2, 4, 6] → справа налево вычёркиваем 6 и 2: [4].

Пример 3
n=1 → 1
Ограничения
  • 1 ≤ n ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСложение чисел-списков СредняяБыстрое возведение в степень СредняяВсе результаты расстановки скобок СредняяДуэль за крайние карты СредняяУдваивающиеся строки из нулей и единиц Средняя
загружаем Python…
Вход
n=10
Ожидается
8

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 80 тестов на сервере, включая скрытые.