2. Изучение систем счисления Ограничение времени 1 секунда
Ограничение памяти 244Mb
Ввод стандартный ввод или digits.in
Вывод стандартный вывод или digits.out
Петя учится конвертировать числа между системами счисления с различными основаниями. Перед тем, как перейти к изучению систем счисления с большим основанием, он хочет научиться работать с двоичными и троичными системами. Когда он записывает результат конвертирования, он всегда ошибается в одной цифре.
Например, если он конвертирует число 14 в двоичную систему, то он может получить «0110» или «1111», хотя корректный результат равен "1110". Петя никогда не добавляет и не удаляет цифры, но у него может получиться число с ведущим нулем в результате ошибки.
Вам дается ответ, записанный Петей при конвертировании числа N (1≤ N≤ 109) в системы счисления с основаниями 2 и 3. Определите исходное значение числа N в десятичной системе счисления. Вы можете полагать, что всегда существует уникальное значение N.
Формат ввода
Строка 1: представление числа N в двоичной системе счисления, одна цифра записана некорректно.
Строка 2: представление числа N в троичной системе счисления, одна цифра записана некорректно.
Формат вывода
Единственная строка с корректным значением числа N в десятичной системе счисления.
Пример
Ввод Вывод
1010
212
14
Примечания
1010 – ошибочная запись исходного числа в двоичной системе счисления. 212 - ошибочная запись исходного числа в троичной системе счисления. Корректное значение числа 14 ("1110" в двоичной системе, "112" в троичной).
16
Объяснение:
1. Алфавит мощностью 26 символов требует для кодирования символа 5 бит (2⁴ < 26 < 2⁵). 22 символа займут 22×5 = 110 бит = 110 / 8 = 13.75 байта, округляем до целого вверх, получаем 14 байт.
2. Номер года обозначается одним из 100 чисел. 2⁶ < 100 > 2⁷, поэтому для кодирования требуется 7 бит.
3. Номер для обозначается одним из 366 чисел. 2⁸ < 366 > 2⁹, поэтому для кодирования требуется 9 бит.
4. Всего для кодирования срока действия потребуется 7+9 = 16 бит = 16/2 = 2 байта
5. Вся информация на пропуске займет 14+2 = 16 байт
16
Объяснение:
1. Алфавит мощностью 26 символов требует для кодирования символа 5 бит (2⁴ < 26 < 2⁵). 22 символа займут 22×5 = 110 бит = 110 / 8 = 13.75 байта, округляем до целого вверх, получаем 14 байт.
2. Номер года обозначается одним из 100 чисел. 2⁶ < 100 > 2⁷, поэтому для кодирования требуется 7 бит.
3. Номер для обозначается одним из 366 чисел. 2⁸ < 366 > 2⁹, поэтому для кодирования требуется 9 бит.
4. Всего для кодирования срока действия потребуется 7+9 = 16 бит = 16/2 = 2 байта
5. Вся информация на пропуске займет 14+2 = 16 байт