Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб |
Даны два числа целых числа a и b. Вычислить их разницу.
a и b записаны на ленте в унарной системе счисления и разделены нулевым символом. Указатель находится на разделяющем нулевом символе.
В алфавите должен быть символ "1".
Первая строка имеет формат ALPHABET
где identifier-list это список идентификаторов, разделённых запятой, обозначающих элементы алфавита ленты. Идентификатор имеет формат [_a-z0-9]*
Алфавит также всегда содержит нулевой символ "Z"
Каждая следующая строка описавает переход из одного состояния в другое в формате
здесь
Программа начинает работу с состояния START.
Программа завершает работу, когда попадает в состояние END. Весь код регистронезависим.
Поместить указатель на начало числа, обозначающего a−b. Число должно быть с обеих сторон отделено нулевым символом.
0 < a < b < 10000
Разрешается задать алфавит не более, чем из одного символа.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб |
Даны два числа целых числа a и b в двоичной системе счисления. Вычислить их сумму.
a и b записаны на ленте в бинарной системе счисления и разделены нулевым символом. Указатель находится на разделяющем нулевом символе. В алфавите должны быть символы "1" и "0".
Первая строка имеет формат ALPHABET <identifier-list>
где identifier-list это список идентификаторов, разделённых запятой, обозначающих элементы алфавита ленты. Идентификатор имеет формат [_a-z0-9]*
Алфавит также всегда содержит нулевой символ "Z", который задаётся неявно.
Каждая следующая строка описавает переход из одного состояния в другое в формате <state> <symbol> -> <state> <symbol> <direction>
здесь <state> — имя состояния (задаётся, как и идентификатор), <symbol> — символ, <direction> — направление смещения каретки (`<`, `.`, или `>`).
Программа начинает работу с состояния START.
Программа завершает работу, когда попадает в состояние END.
Весь код регистронезависим. Строки, начинающиеся с символа `#`, пропускаются.
Поддерживается такое описание правила перехода:
<state> <lsymbol-list> -> <state> <rsymbol-list> <direction> где <lsymbol-list> и <lsymbol-list> это списки символов через запятую. Например:
state1 a,b,c -> state2 c,d,e .
буквально означает
state1 a -> state2 c .
state1 b -> state2 d .
state1 c -> state2 e .
В <lsymbol-list> также можно указать "*" вместо символа, что будет соответствовать любому символу. Например, при алфавите A, B, C, Z правило
statex a, b, * -> statey c, d, e
буквально означает
statex a -> statey c .
statex b -> statey d .
statex C -> statey e .
statex Z -> statey e .
Поместить указатель на начало числа, обозначающего a−b. Число должно быть с обеих сторон отделено нулевым символом.
0lt;= blt;= alt; 109
Разрешается задать алфавит не более, чем из четырёх символов, не считая нулевого.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб |
Даны два числа целых четырёхбайтовых числа a и b. Вычислить их сумму
Вывести младшие 4 байта суммы в big-endian порядке.
0 < a, b < 232
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|