Автор: | А. Баранов | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 2 Мб | |
Выходной файл: | output.txt |
Пусть имеется программа, записанная на императивном языке программирования, поддерживающем команды следующего вида:
<переменная> = <выражение> — присвоить переменной результат заданного выражения.
Выражение может состоять из арифметических операций ('+', '-', '*', '/'), круглых скобок, переменных и целочисленных констант. Между ними также допускается произвольное число пробелов. При этом знак минуса используется здесь для обозначения как бинарной, так и унарной операции. Операции ('+', '-') имеют меньший приоритет, чем ('*', '/'). Операции, обладающие одинаковым приоритетом, выполняются слева направо.
В качестве имен переменных выступают символы латинского алфавита (регистр их написания неважен). Полагается, что все они принадлежат к знаковому 32-разрядному целому типу и могут принимать значения из диапазона от − 231 до 231 − 1. Константы представляют собой числа, записанные в десятичной системе счисления и лежащие в диапазоне от 0 до 231 − 1.
Изначально всем переменным присваиваются нулевые значения. Арифметическое переполнение и деление на ноль приводят к неопределенному результату, для обозначения которого используется символ '#' (ASCII 35). Все операции с неопределенным значением (кроме умножения на ноль) также возвращают '#'.
В рамках текущей задачи для каждой переменной требуется определить ее значение, полученное по окончанию программы.
Во входном файле "input.txt" построчно содержатся команды указанного языка.
В выходной файл "output.txt" следует вывести пары: <переменная> <значение>. При этом переменные, которые отсутствуют в левых частях выражений, могут быть проигнорированы.
Полагается, что все представленные команды включают в себя не более 50 арифметических операций и не содержат синтаксических ошибок.
Число открывающихся скобок также ограничено и не превосходит 30.
Входная программа состоит как минимум из одной команды. Общее число команд не превосходит 1000.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|