Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Откройте файл электронной таблицы, содержащей в каждой строке шесть натуральных чисел. Определите наибольший номер строки таблицы, для чисел которой выполнены оба условия:
– в строке есть два числа, каждое из которых повторяется ровно два раза, остальные два числа различны;
– сумма неповторяющихся чисел строки не больше суммы двух различных повторяющихся чисел.
В ответе запишите только число.
with open('930.txt') as f:
data = [list(map(int, i.split())) for i in f]
def f1(arr):
cnt = [arr.count(num) for num in set(arr)]
return sorted(cnt) == [1, 1, 2, 2]
def f2(arr):
no_rep = [i for i in arr if arr.count(i) == 1]
rep_2 = set([i for i in arr if arr.count(i) == 2])
return sum(no_rep) <= sum(rep_2)
for idx, line in list(enumerate(data, start=1))[::-1]:
if f1(line) and f2(line):
print(idx)
break
