(Д. Статный) В файле содержится последовательность целых чисел, записанных в позиционных системах исчисления с основаниями от \(2\) до \(36\) (для систем с основаниями, большими \(10,\) в качестве цифр используются буквы \(A, \, B, \, C, \, \ldots , \, Z).\) Будем считать, что основание системы счисления на единицу больше, чем максимальная цифра числа (например, для числа \(1A42\) основание системы счисления равно \(A + 1 = 10 + 1 = 11).\) Парой назовём два подряд идущих элемента последовательности. Определите количество пар, в которых основания систем счисления, в которых записаны числа, отличаются не более чем на \(2.\) В ответ запишите сначала количество таких пар, а затем — максимальную сумму элементов пары (в десятичной системе счисления).
Решение:
Python
nums = [x.strip() for x in open('6096.txt')]
q, ms = 0, 0
for a, b in zip(nums, nums[1:]):
pa = max(int(c, 36) for c in a) + 1
pb = max(int(c, 36) for c in b) + 1
if abs(pa - pb) < 3:
q += 1
ms = max(ms, int(a, pa) + int(b, pb))
print(q, ms)
Ответ: \(3118 \,\, 120557282\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене