Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Откройте файл электронной таблицы, содержащей в каждой строке четыре натуральных числа. Определите количество строк таблицы, содержащих числа, для которых выполнено хотя бы одно из условий:
– квадрат наибольшего из четырёх чисел больше произведения трёх других;
– будучи упорядоченными, четыре числа образуют арифметическую прогрессию.
В ответе запишите только число.
Правильный ответ:
71
from math import prod
with open('924.txt') as f:
data = [list(map(int, i.split())) for i in f]
def f1(arr):
return prod(arr[:-1]) < arr[-1] ** 2
def f2(arr):
d = arr[1] - arr[0]
return all(arr[i] - arr[i - 1] == d
for i in range(2, len(arr)))
count = 0
for line in data:
line.sort() # сортировка до передачи в функции
if f1(line) or f2(line):
count += 1
print(count)
