909.py

Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел. Определите количество строк таблицы, для чисел которых выполнены оба условия: 1. в строке есть два числа, каждое из которых повторяется дважды, остальные три числа различны; 2. среднее арифметическое трёх неповторяющихся чисел строки не больше среднего арифметического всех её чисел. В ответе запишите только число.
"""
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел.
Определите количество строк таблицы, для чисел которых выполнены оба условия:

    1. в строке есть два числа, каждое из которых повторяется дважды, остальные три числа различны;
    2. среднее арифметическое трёх неповторяющихся чисел строки не больше среднего арифметического всех её чисел.

В ответе запишите только число.
"""
count = 0
for i in open('909'):
    # переводим строку в список из семи целых чисел
    a = [int(x) for x in i.split()]
    if len(a) != 7:
        continue
    rep2 = [x for x in set(a) if a.count(x) == 2]
    rep1 = [x for x in set(a) if a.count(x) == 1]
    if len(rep2) != 2 or len(rep1) != 3:
        continue
    # среднее неповторяющихся не больше среднего всех
    if sum(rep1) / 3 <= sum(a) / 7:
        count += 1
print(count)

"""
Ответ: 92
"""
"""
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел.
Определите количество строк таблицы, для чисел которых выполнены оба условия:

    1. в строке есть два числа, каждое из которых повторяется дважды, остальные три числа различны;
    2. среднее арифметическое трёх неповторяющихся чисел строки не больше среднего арифметического всех её чисел.

В ответе запишите только число.
"""
count = 0
for i in open('909'):
    # переводим строку в список из семи целых чисел
    a = [int(x) for x in i.split()]
    if len(a) != 7:
        continue
    rep2 = [x for x in set(a) if a.count(x) == 2]
    rep1 = [x for x in set(a) if a.count(x) == 1]
    if len(rep2) != 2 or len(rep1) != 3:
        continue
    # среднее неповторяющихся не больше среднего всех
    if sum(rep1) / 3 <= sum(a) / 7:
        count += 1
print(count)

"""
Ответ: 92
"""

Файлы данных

Репозиторий на GitHub