01-5. Шестнадцатеричный сумматор
Имя входного файла: | hex.in |
Имя выходного файла: | hex.out |
Ограничение по времени: | 2 s |
Ограничение по памяти: | 64 megabytes |
В хозяйстве у программиста, особенно у системного, всегда есть непустое (даже очень непустое) множество полезных утилит - эдаких маленьких программок, выполняющих какие-то непонятные функции. Так вот, одной из таких программок может служить шестнадцатеричный сумматор. Зачем он нужен? А очень просто: при написании программ на ассемблере приходится очень часто работать с шестнадцатеричными числами, так как эта система счисления наиболее часто используется при записи значений регистров, адресов оперативной памяти и прочих подобных вещей. Так вот, Вам дан файл, содержащий шестнадцатеричные числа. Необходимо их все сложить и вывести в выходной файл. Тоже в шестнадцатеричной системе счисления.
Формат входного файла
Входной файл содержит шестнадцатеричные числа, разделенные чем угодно. Чем угодно - в данном случае означает, что между числами могут стоять абсолютно любые символы, но только те, которые не входят в запись 16-ичного числа. Будем считать, что 16-ичные числа записываются цифрами от 0 до 9 и заглавными латинскими буквами от A до F. Так, строка "AaB" содержит 2 числа A и B (10 и 11 соответственно). Гарантируется, что каждое число во входном файле (а они все положительны), помещается в стандартный 32-х битный целый тип. Их сумма также помещается в 32-х битный целый тип.
Формат выходного файла
Одна строка - сумма чисел из входного файла, записанная в 16-ичной системе.
Пример:
hex.in | hex.out |
---|---|
mov ax, 13 int 10 db C4 db C4 db 0 | 1AB |
Источник: Первенство первокурсника ПетрГУ. Осень 2006.
Обсудить Отправить решение