Все ваши базы
Условие: Вам дана спецификация для системы счисления с переменным основанием, которую мы будем называть "основание". Ваша задача — принимать пары чисел, записанных в этом "основании", выполнять над ними заданные операции и выводить результат в том же основании.
Основание: Это система счисления, где самая правая цифра (цифра 1) может принимать значения от 0 до 1, вторая справа цифра (цифра 2) — от 0 до 2, и так далее. В общем случае, каждая цифра n (считая справа) может иметь значения от 0 до n. После 9 используются заглавные буквы от A до Z. После самой высокой цифры (которая может быть от 0 до Z) дальнейшие цифры невозможны; любые числа, превышающие эту цифру, считаются недействительными. Отрицательные числа обозначаются префиксом "-". Числа не имеют ведущих нулей, за исключением самого нуля, который представлен как "0".
Операции: Сложение (+) и вычитание (-): Числа складываются или вычитаются стандартным образом, включая перенос и заимствование.
Входные данные
Первая строка ввода содержит число (в десятичной системе) операций, которые нужно выполнить.
Каждая следующая строка содержит не более 1000 байт и состоит из числа с переменным основанием, пробела, символа операции (+ или -), пробела, другого числа с переменным основанием и символа новой строки (LF).
Любое из чисел в операции (а также результат) может быть отрицательным.
Выходные данные
Для каждой операции из входных данных выведите одну строку, содержащую либо результат (число с переменным основанием), либо строку "Invalid" (без кавычек), за которой следует символ новой строки (LF).
Если любое из входных чисел или полученное число недействительно в системе счисления, или при выполнении операции возникает ошибка, результат считается недействительным.