Робот C++

Бесконечная в обе стороны полоса ширины 1 разбита на клетки размера 1 x 1. В одной из них находится робот, который может двигаться из одной клетки в другую (на рисунке робот обозначен квадратиком). Его перемещения определяются программой, каждая команда в которой - это одна из трех больших латинских букв: LRS. Выполняя команду L, робот перемещается на одну клетку влево, команду R - на одну клетку вправо, а S - остается в той же самой клетке. Выполнение программы означает последовательное выполнение всех команд, записанных в ней.

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

Входные данные

   Программа для робота - строка из символов LRS. Программа состоит не более чем из 10000 команд.

Выходные данные

   Вывести количество различных клеток, которые посетит робот, выполняя свою программу.

 

 

#include <stdio.h>

int main()
{
    unsigned char temp;
    long index = 10000;
    bool m[20000];
    for (int i = 0; i<20000; i++) m[i] = false;
    m[index] = true;
    do
    {
        scanf("%c", &temp);
        if (temp != '\n')
        {
            if (temp == 'L') m[++index] = true;
            if (temp == 'R') m[--index] = true;
        }
    } while (temp != '\n');
    index = 0;
    for (int i = 0; i<20000; i++) if (m[i]) index++;
    printf("%d\n", index);
}

Назад

Повышение продаж с помощью веб-форм Разложение числа на простые множители Как качественный контент способствует продвижению сайта Как выбрать хостинг Как писать SEO-тексты? Что такое SEO оптимизация сайта


Хостинг

Есть решение которого нет на сайте? Пиши admin@devexe.top