Ctrl K

Аварии на одной полосе

Средняя
На бесконечной прямой дороге стоят машины, пронумерованные слева направо от 0; у каждой своя точка. Строка moves описывает их: moves[i] — это 'L' (машина едет влево), 'R' (едет вправо) или 'S' (стоит на месте). Все едущие машины движутся с одинаковой скоростью. Столкновения считаются так: - две машины, едущие навстречу друг другу, сталкиваются — счёт растёт на 2; - едущая машина врезается в стоящую — счёт растёт на 1. После столкновения участники останавливаются там, где столкнулись, и дальше стоят. Больше никто направление не меняет. Верните итоговое число столкновений.
Пример 1
moves="RSLR" → 2

Машина 0 врезается в стоящую машину 1 (+1), машина 2 тоже врезается в неё (+1). Машина 3 уезжает вправо. Итого 2.

Пример 2
moves="RRL" → 3

Машины 1 и 2 сталкиваются лоб в лоб (+2) и замирают, затем в них въезжает машина 0 (+1). Итого 3.

Пример 3
moves="LSR" → 0
Ограничения
  • 1 ≤ len(moves) ≤ 10⁵
  • каждый символ moves — 'L', 'R' или 'S'
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиВычеркнуть образец до конца СредняяЗвёздочка вместо Backspace СредняяПары зеркальных букв СредняяОдинаковый текст после стираний ЛёгкаяСхлопывание пар букв Лёгкая
загружаем Python…
Вход
moves="RSLR"
Ожидается
2

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