Решение задачи Лифт с Acmp

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


В доме Вилли установили скоростной лифт новой экспериментальной модели. В этом лифте кнопки с номерами этажей заменены двумя другими кнопками. При нажатии на первую кнопку лифт поднимается на один этаж вверх, а при нажатии на вторую – опускается на один этаж вниз.

Младшему брату Вилли Дилли очень нравится кататься на новом лифте. Он катается на нём до тех пор, пока не побывает на каждом из этажей хотя бы по одному разу. После этого Дилли довольный возвращается домой.

Зная порядок, в котором Дилли нажимал на кнопки лифта, попробуйте определить общее количество этажей в доме Вилли и Дилли.

Код

#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    string str;
    cin >> str;
    vector<int> a;
    int k = 0;
    int c = str.size() + str.size() + 5;
    int j = c/2;
 
    for(int i = 0; i < c; ++i)
        a.push_back(0);
    a[j] = 1;
    for(int i = 0; i < str.size(); ++i){
        if(str[i]=='1'){
            a[j - 1]++;
            j--;
        }
        if(str[i]=='2'){
            a[j + 1]++;
            j++;
        }
    }
 
    for(int i = 0; i < a.size(); ++i)
        if(a[i] > 0)
            k++;
    cout << k ;
    return 0;
}

         

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




Комментарии

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