Контроль возврата автономного робота
Просмотр в формате PDFПервая олимпиада Олмат.Программирование. 23.02.26
Тема: Автономный транспорт Уровень: Новичок
📜 Вторая находка
В ходе цифровых раскопок 20xx года был найден архив древней складской системы. Внутри — фрагменты управляющего кода автономного робота-погрузчика.
Это одна из первых моделей автономного транспорта, применявшихся в распределительных центрах начала XXI века. Робот перемещался по сетке склада, выполняя последовательность команд.
Однако архив повреждён. Осталась лишь строка с командами движения. Неизвестно — вернулся ли робот к точке подзарядки.

Ваша задача — восстановить поведение машины и определить: завершился ли маршрут корректным возвратом в исходную точку.
🧠 Немного о технологии
Автономные складские роботы работают в дискретном пространстве — перемещаются по координатной сетке.
Каждая команда:
- U — движение вверх
- D — движение вниз
- L — движение влево
- R — движение вправо
Каждое движение изменяет координаты робота на 1 единицу.
Робот начинает движение из точки (0, 0).
Если после выполнения всех команд координаты снова стали (0, 0) — возврат успешен.
📌 А как это применяется ?
Это базовый принцип координатной симуляции — моделирования перемещений объекта в двумерной системе координат.
Такой подход применяется:
- в робототехнике,
- в навигационных системах,
- в моделировании беспилотного транспорта,
- в игровых движках,
- в системах складской логистики.
Симуляция — это пошаговое воспроизведение действий объекта по заданным правилам.
⚙️ Как работает такя система в роботах ?
В реальных системах:
- Контроллер получает последовательность команд.
- Каждая команда изменяет текущее положение робота.
- Система отслеживает координаты в реальном времени.
- После завершения маршрута проверяется возврат в базовую точку.
Если возврата нет — происходит аварийная сигнализация или корректирующий маршрут.
В программировании эта задача решается с помощью:
- двух переменных (x и y),
- последовательной обработки строки,
- изменения координат в зависимости от символа.
📌 Задача
Дана строка, состоящая из символов U, D, L, R.
Необходимо определить, вернулся ли робот в исходную точку (0, 0) после выполнения всех команд.
Если вернулся — вывести YES.
Если нет — вывести NO.
📥 Формат входных данных
Одна строка — последовательность команд движения робота.
Ограничения
- Длина строки от 1 до 10⁵
- Строка содержит только символы U, D, L, R
📤 Формат выходных данных
Вывести:
YES, если робот вернулся в точку стартаNO, если робот не вернулся
📘 Примеры
Пример 1
Входные данные:
UD
Выходные данные:
YES
Пример 2
Входные данные:
LL
Выходные данные:
NO
Пример 3
Входные данные:
URDL
Выходные данные:
YES
Комментарии