Мини-урок · перед практикой

Удалить каждый третий символ

Удаляем индексы 0, 3, 6 и так далее.

Как к ней подойти

Потренируйтесь находить нужные символы и фрагменты строки, не теряя границы срезов.

Коротко о теме

У строки есть индексы, срезы и методы поиска. Индексация начинается с нуля, правая граница среза не включается. Перед сборкой ответа проверьте, что произойдёт, если искомый фрагмент отсутствует.

Ключевая идея · Фильтрация по индексу

Остаток от деления индекса определяет, нужно ли сохранять символ.

Проверьте перед запуском

  • Нумерация начинается с 0: самый первый символ удаляется.

Сравните свой подход

Ниже - готовое решение, другой способ, если он есть, и важные детали проверки.

Ваше принятое решение

Рекомендуемое решение: Фильтрация по индексу

Остаток от деления индекса определяет, нужно ли сохранять символ.

s = input()
print(''.join(c for i, c in enumerate(s) if i % 3 != 0))

Время: O(L). Память: O(L).

Другой способ: Сборка блоков по два символа

В каждой тройке пропускаем первый символ и берём следующие два; короткий последний срез безопасен.

s = input()
print(''.join(s[i + 1:i + 3] for i in range(0, len(s), 3)))

Время: O(L). Память: O(L).