Автор: Демоверсия 2025
Уровень: Базовый
Условие задачи:
Дано выражение: 98897x21_19 + 2x923_19
В записи чисел переменной x обозначена неизвестная цифра из алфавита 19-ричной системы счисления. Определите наибольшее значение x, при котором значение данного арифметического выражения кратно 18.
Для найденного x вычислите частное от деления значения арифметического выражения на 18.
Код решения:
Комментарии к коду:
- alphabet = sorted('0123456789QWERTYUIOPASDFGHJKLZXCVBNM')
Создаем упорядоченный список символов, содержащий цифры и буквы алфавита. - for x in alphabet[:19]:
Запускаем цикл по первым 19 символам из отсортированного алфавита. - A = int(f'98897{x}21', 19)
Преобразуем строку, состоящую из фиксированной последовательности '98897', текущего символа x и '21', в целое число с основанием 19. - B = int(f'2{x}923', 19)
Преобразуем строку, состоящую из '2', текущего символа x и '923', в целое число с основанием 19. - if (A + B) % 18 == 0:
Проверяем, делится ли сумма A и B на 18 без остатка. - print((A + B) // 18)
Если условие выполнено, выводим целую часть результата деления суммы A и B на 18.