906.py

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

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

В ответе запишите только число.
"""
max_row = 0
n = 0
for i in open('906'):
    n = n + 1
    # переводим строку в список из шести целых чисел
    a = [int(x) for x in i.split()]
    # числа, встречающиеся ровно 3 раза и 1 раз
    pov3 = [x for x in a if a.count(x) == 3]
    pov1 = [x for x in a if a.count(x) == 1]
    # одно число трижды, три по одному разу
    if len(pov3) == 3 and len(pov1) == 3:
        if pov3[0] > sum(pov1) / 3:
            max_row = n
print(max_row)

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

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

В ответе запишите только число.
"""
max_row = 0
n = 0
for i in open('906'):
    n = n + 1
    # переводим строку в список из шести целых чисел
    a = [int(x) for x in i.split()]
    # числа, встречающиеся ровно 3 раза и 1 раз
    pov3 = [x for x in a if a.count(x) == 3]
    pov1 = [x for x in a if a.count(x) == 1]
    # одно число трижды, три по одному разу
    if len(pov3) == 3 and len(pov1) == 3:
        if pov3[0] > sum(pov1) / 3:
            max_row = n
print(max_row)

"""
Ответ: 10493
"""

Файлы данных

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