Задание 17. Информатика. Статград-22-4-2

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

Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых ровно один из двух элементов делится на \( 5 \), а модуль их разности меньше наименьшего чётного элемента последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальный модуль разности элементов таких пар.

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

Решение:

Python


f = open('17.txt')

nums = list(map(int, f.readlines()))
min_even = min([x for x in nums if not x % 2])

pair_count = 0
max_sub = 0

for i in range(1, len(nums)):
    if ((nums[i-1] % 5 and not nums[i] % 5) \
        or (not nums[i-1] % 5 and nums[i] % 5)) \
        and abs(nums[i-1] - nums[i]) < min_even:
        pair_count += 1
        max_sub = max(max_sub, abs(nums[i-1] - nums[i]))
    
print(pair_count, max_sub)

Ответ: 577    823