904.py

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

    1. в строке все числа различны;
    2. удвоенная сумма минимального и максимального чисел строки равна
       утроенной сумме трёх её оставшихся чисел.

В ответе запишите только число.
"""
max_row = 0
n = 0
for i in open('904'):
    n = n + 1
    # переводим строку в список из пяти целых чисел
    a = [int(x) for x in i.split()]
    # все числа различны
    if len(a) != 5 or len(set(a)) != 5:
        continue
    mn = min(a)
    mx = max(a)
    sum_rest = sum(a) - mn - mx
    # 2 * (min + max) == 3 * (сумма трёх оставшихся)
    if 2 * (mn + mx) == 3 * sum_rest:
        max_row = n
print(max_row)

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

    1. в строке все числа различны;
    2. удвоенная сумма минимального и максимального чисел строки равна
       утроенной сумме трёх её оставшихся чисел.

В ответе запишите только число.
"""
max_row = 0
n = 0
for i in open('904'):
    n = n + 1
    # переводим строку в список из пяти целых чисел
    a = [int(x) for x in i.split()]
    # все числа различны
    if len(a) != 5 or len(set(a)) != 5:
        continue
    mn = min(a)
    mx = max(a)
    sum_rest = sum(a) - mn - mx
    # 2 * (min + max) == 3 * (сумма трёх оставшихся)
    if 2 * (mn + mx) == 3 * sum_rest:
        max_row = n
print(max_row)

"""
Ответ: 13412
"""

Файлы данных

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