Задание №14 ЕГЭ Информатика с ответом и решением
Ответ: 1345
Условие
В числе 12x643y737 x и y обозначают некоторые цифры из алфавита системы счисления с основанием 37. Определите такие значения x и y, при которых приведённое число кратно 36, а число yx37 имеет наибольшее возможное значение. В ответе запишите значение числа yx37 в десятичной системе счисления.
Подсказки — как подойти к решению
- Основание системы на единицу больше делителя, значит число сравнимо с суммой своих цифр по этому модулю. Собери условие на сумму известных цифр и неизвестных букв.
- Из подходящих пар выбери ту, где старшая из двух букв максимальна, и не забудь перевести двузначную запись в десятичное значение: старшая буква умножается на основание.
Решение
Приведём решение на языке Python.
c = []
for x in range(0,37):
for y in range(0,37):
t = 1*37**7+2*37**6+x*37**5+6*37**4+4*37**3+3*37**2+y*37**1+7*37**0
if t % 36 == 0:
c.append(y*37**1+x)
print(max(c))
Ответ: 1345.
Приведём решение Юрия Красильникова на языке Python.
def num(digits,base):
n = 0
for d in digits:
n=n * base + d
return n
a = [num([y,x],37) for x in range(37) for y in range(1,37) if num([1,2,x,6,4,3,y,7],37)%36==0]
print(max(a))
Примечание. Функция int в питоне работает с основаниями системами счисления до 36 включительно. Предлагаемое решение для любого основания системы счисления, сколь угодно большого. В решении используется функция num(digits,base). digits — список целых чисел, содержащий числовые значений цифр числа в системе счисления по основанию base. Функция возвращает значение числа, записанного этими цифрами.
Ответ: 1345
Типичные ошибки
- Ты поменял буквы местами: в двузначном числе старший разряд — первая буква, поэтому на основание умножается не та цифра, что ты взял. Проверь порядок разрядов.
В тренажёре: подсказки по шагам, разбор твоей ошибки ИИ-репетитором (он не даёт готовый ответ), повторение ошибок по интервалам и общий прогресс. Все задания №14 по информатике