Task 53_2. Робот
UniLecsЗадача: Бесконечная строка ширины 1 разбита на клетки размера 1х1. В одной клетке находится робот который может двигаться из одной клетки в другую. Его перемещения определяются программой, каждая команда в которой – это одна из трех больших латинских букв: L, R, S. Выполняя команду L, робот перемещается на одну клетку влево, команду R – на одну клетку вправо, а S – остается в той же самой клетке.
Напишите программу, которая определит сколько различных клеток посетит робот.
Входные данные:
Программа для робота – строка из символов L, R, S. Программа состоит не более чем из 10000 команд.
Вывести количество различных клеток, которые посетит робот, выполняя свою программу.
Пример входа:
RRSRRLRR
Пример выхода:
6
Реализация:
@moninigor прислал нам крутое решение на Python.
Игорь не просто решил поставленную задачу, но и дополнил решение для случая, когда робот двигается по плоскости. Респект тебе, бро! Итак, смотрим его решение.
Робот двигается по прямой (вправо/влево)



Робот двигается по плоскости (вправо/влево + вниз/вверх)


Исходный код вы можете посмотреть здесь:
https://gist.github.com/unilecs/dbed15df735884a84de3d958f68e79ac
А также потестить оба подхода: