Для начинающих на С. Составители
Скачать 1.31 Mb.
|
Выходные данныеВ выходной файл выведите ответ на задачу.
Задача 85 (№ 336) Лифт (Сложность: 20%) В доме Вилли установили скоростной лифт новой экспериментальной модели. В этом лифте кнопки с номерами этажей заменены двумя другими кнопками. При нажатии на первую кнопку лифт поднимается на один этаж вверх, а при нажатии на вторую – опускается на один этаж вниз.
Входные данные. Первая строка входного файла INPUT.TXT содержит последовательность нажатий на кнопки лифта. Символ «1» означает, что была нажата первая кнопка, а символ «2» – что была нажата вторая кнопка. Символы «1» и «2» не разделены пробелами. Количество нажатий не превосходит 100. Гарантируется, что лифт никогда не опускался ниже первого и не поднимался выше последнего этажа. Выходные данные В выходной файл вывести одно число – количество этажей в доме Вилли и Дилли.
Из таблицы видно, что ответ задачи равен сумме мах+abs(min)+1 #include using namespace std; int main (){ int f1=0,f2=0,min=0,max=0,temp=0; string str; cin>>str; for (int i=0;i if (str[i]-48==1){temp++; if (temp>max)max=temp; } else{ temp--; if (temp cout< return 0; } Задача 86 (№ 387) Левая рекурсия (Сложность: 20%) В теории формальных грамматик и автоматов (ТФГиА) важную роль играют так называемые контекстно-свободные грамматики (КС-грамматики). КС-грамматикой будем называть четверку, состоящую из множества N нетерминальных символов, множества T терминальных символов, множества P правил (продукций) и начального символа S, принадлежащего множеству N. Каждая продукция p из P имеет форму A –> a, где A нетерминальный символ (A из N), а a – строка, состоящая из терминальных и нетерминальных символов. Процесс вывода слова начинается со строки, содержащей только начальный символ S. После этого на каждом шаге один из нетерминальных символов, входящих в текущую строку, заменяется на правую часть одной из продукций, в которой он является левой частью. Если после такой операции получается строка, содержащая только терминальные символы, то процесс вывода заканчивается. Во многих теоретических задачах удобно рассматривать так называемые нормальные формы грамматик. Процесс приведения грамматики к нормальной форме часто начинается с устранения левой рекурсии. В этой задаче мы будем рассматривать только ее частный случай, называемый непосредственной левой рекурсией. Говорят, что правило вывода A –> R содержит непосредственную левую рекурсию, если первым символом строки R является A. Задана КС-грамматика. Требуется Найти количество правил, содержащих непосредственную левую рекурсию. |