Задание 17. Информатика. Статград-22-4-1
- Просмотры: 215
- Изменено: 23 ноября 2024
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых ровно один из двух элементов делится на \( 3 \), а модуль их разности меньше наименьшего нечётного элемента последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальный модуль разности элементов таких пар.
Решение:
Python
f = open('17.txt')
nums = list(map(int, f.readlines()))
min_odd = min([x for x in nums if x % 2])
pair_count = 0
max_sub = 0
for i in range(1, len(nums)):
if ((nums[i-1] % 3 and not nums[i] % 3) \
or (not nums[i-1] % 3 and nums[i] % 3)) \
and abs(nums[i-1] - nums[i]) < min_odd:
pair_count += 1
max_sub = max(max_sub, abs(nums[i-1] - nums[i]))
print(pair_count, max_sub)
Ответ: 748 826