Все задачи №14
№14

Цифра x, нулевая цифра

Операнды арифметического выражения записаны в системе счисления с основанием 23. 81x9982₂₃ + 36x24₂₃ + 72x5₂₃ В записи чисел переменной x обозначена неизвестная цифра из алфавита 23-ричной системы счисления. Определите наименьшее значение x, при котором значение данного арифметического выражения кратно 22. Для найденного x вычислите частное от деления значения арифметического выражения на 22 и укажите его в ответе в десятичной системе счисления. Основание системы счисления указывать не нужно.

Источник: ФИПИ (Основная), № 31136

Ответвпиши то, что вывела программа
Показать разбор
  1. Перебирай x по цифрам системы: printable[:23]. Цифры идут по возрастанию, начиная с 0.
  2. Подставляй x в каждую запись через f-строку и читай её через int.
  3. Проверь, что сумма делится на 22 без остатка.
  4. Для подходящих x сохраняй частное, деление только через //.
  5. Для наименьшего x нужно первое частное в списке, его и выведи.
from string import printable

res = []
for x in printable[:23]:
    x1 = int(f'81{x}9982', 23)
    x2 = int(f'36{x}24', 23)
    x3 = int(f'72{x}5', 23)
    if (x1 + x2 + x3) % 22 == 0:
        res.append((x1 + x2 + x3) // 22)
print(res[0])