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

Просмотры: 117
Изменено: 23 ноября 2024

(Е. Джобс) В файле содержится последовательность натуральных чисел, не превышающих \(100~000\). Определите количество пар элементов последовательности, в которых хотя бы одно число кратно минимальному двузначному элементу последовательности, кратному сумме своих цифр. Гарантируется, что в последовательности есть хотя бы одно двузначное число, соответствующее условию. В ответе запишите количество найденных пар чисел, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.

Файл с данными

Решение:

Python


def check(x):
    if 9 < x < 100:
        s = x % 10 + x // 10
        if x % s == 0:
            return True
    
    return False

nums = [int(x) for x in open('17.txt')]

min_el = min([x for x in nums if check(x)])

q = 0
max_sum = 0

for p in zip(nums, nums[1:]):
    if any(x % min_el == 0 for x in p):
        q += 1
        max_sum = max(max_sum, sum(p))

print(q, max_sum)

Ответ: \(537 \,\, 19247\)