Алгоритм решения задания 15. Часть 5
Учимся решать 15 задания пятого типа
Читать
B файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно.
Определите количество пар последовательности, в которых только один из элементов является трёхзначным числом, a сумма элементов пары кратна минимальному трёхзначному элементу последовательности, оканчивающемуся на 7.
В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
with open('1713.txt') as f:
data = list(map(int, f))
min_7 = min(i for i in data if len(str(abs(i))) == 3 and str(i)[-1] == '7')
# Через исключающее или - ^
def f(x, y):
return (100 <= x < 1000) ^ (100 <= y < 1000)
ans = []
for x, y in zip(data, data[1:]):
if f(x, y) and (x + y) % min_7 == 0:
ans.append(x + y)
print(len(ans), min(ans))
