Ctrl K

Столкновения роботов на рельсе

Средняя
По прямому рельсу едут роботы, все с одинаковой скоростью. Массив robots описывает их слева направо: модуль числа — масса робота, знак — направление (плюс — вправо, минус — влево). Нулей в массиве нет. Когда два робота едут навстречу и встречаются, лёгкий ломается и исчезает с рельса, а тяжёлый едет дальше. Если массы равны, ломаются оба. Роботы, едущие в одну сторону, никогда не догоняют друг друга. Верните роботов, оставшихся после всех столкновений, в порядке слева направо.
Пример 1
robots=[4, -2, 6, -6, -5] → [-5]

4 и -2 сталкиваются, -2 ломается. 6 и -6 равны — ломаются оба. Затем 4 встречает -5 и ломается. Остаётся [-5].

Пример 2
robots=[-3, -1, 2, 7] → [-3, -1, 2, 7]

Левые едут влево, правые вправо — никто ни с кем не встретится.

Пример 3
robots=[5, 3, -4] → [5]
Ограничения
  • 2 ≤ len(robots) ≤ 10⁵
  • -1000 ≤ robots[i] ≤ 1000
  • robots[i] ≠ 0
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПорядок снятия со стека СредняяСтек из потока чисел СредняяЖурнал очков викторины ЛёгкаяРазборчивая очередь у раздачи ЛёгкаяСтолкновения роботов на рельсе Сложная
загружаем Python…
Вход
robots=[4, -2, 6, -6, -5]
Ожидается
[-5]

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