Задание 14. Информатика. ЕГЭ. Поляков-7004

Просмотры: 360
Изменено: 25 ноября 2024

(П. Финкель) Операнды арифметического выражения записаны в системе счисления с различными основаниями: $$5xx78_{17} + 4xx9_{18} + 88xx5_{19} - 6xy23_{22}$$ В записи чисел \(x\) и \(y\) обозначают неизвестные цифры из алфавита соответствующей системы счисления. Определите все пары \((x, \, y)\), при которых значение данного арифметического выражения положительно и кратно \(405\). В ответе запишите произведение всех найденных значений \(x\) и \(y\).

Решение:

Python


xy_prod = 1
for x in range(17):
    for y in range(22):
        d1 = [5, x, x, 7, 8]
        d2 = [4, x, x, 9]
        d3 = [8, 8, x, x, 5]
        d4 = [6, x, y, 2, 3]
        n1 = sum(a * 17**b for a, b in zip(d1, range(4, -1, -1)))
        n2 = sum(a * 18**b for a, b in zip(d2, range(3, -1, -1)))
        n3 = sum(a * 19**b for a, b in zip(d3, range(4, -1, -1)))
        n4 = sum(a * 22**b for a, b in zip(d4, range(4, -1, -1)))
        n = n1 + n2 + n3 - n4
        if n > 0 and n % 405 == 0:
            xy_prod *= x * y
print(xy_prod)

Ответ: \(1680\)