Решение задачи Отельер с Codeforces

Без пояснения   Просмотров: 32


Амуга владеет отелем, представимым в виде длинного коридора с 10 комнатами, идущими подряд. Комнаты пронумерованы цифрами от 0 до 9 слева направо.

В отель есть два входа: с левого конца коридора и с правого. Если гость заходит с левого конца коридора, то он будет расположен в ближайшей к левому входу свободной комнате. Аналогично, если гость заходит с правого конца коридора, то ему будет назначена ближайшая к правому входу свободная комната.

Однажды Амуга потерял документ с указанием статуса занятости комнат. К счастью, у него безупречная память, и он помнит всё о своих гостях: когда гость пришёл в отель, с какой стороны он вошёл, и когда он покинул отель. Изначально все комнаты в отеле были свободными. Напишите программу, которая восстановит статус занятости комнат по событиям из памяти Амуга.

Код

#include<iostream>
using namespace std;
int main()
{
    long long int n;
    string s;
    string a="0000000000";
    cin>>n>>s;
    for(int i=0;i<n;i++)
    {
        if(s[i]=='L')
        a[a.find('0')]='1';
        if(s[i]=='R')
        a[a.rfind('0')]='1';
        else
        a[s[i]-'0']='0';
    }
    cout<<a;
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться