Ctrl K

Растущая строка

Средняя
Дана строка word из строчных латинских букв и число rounds. За один раунд каждая буква строки одновременно заменяется по правилу: - z превращается в две буквы ab; - любая другая буква превращается в следующую по алфавиту (a → b, m → n и т. д.). Верните длину строки после ровно rounds раундов. Ответ может быть огромным, поэтому верните его по модулю 10⁹ + 7.
Пример 1
word="xyz", rounds=2 → 5

После первого раунда: y, z, ab → "yzab". После второго: z, ab, b, c → "zabbc", это 5 символов.

Пример 2
word="hello", rounds=3 → 5

Ни одна буква за три шага не доходит до z, так что строка просто сдвигается и остаётся длины 5.

Пример 3
word="a", rounds=27 → 2
Ограничения
  • 1 ≤ len(word) ≤ 10⁵
  • word состоит только из строчных латинских букв
  • 1 ≤ rounds ≤ 10⁵
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиДлина разросшегося слова СложнаяКуски с одинаковыми краями СредняяСообщения за нажатиями СредняяРовные куски строки СредняяКак далеко уйти, поправив маршрут Средняя
загружаем Python…
Вход
word="xyz", rounds=2
Ожидается
5

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