903.py
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел.
Определите количество строк таблицы, для чисел которых выполнены оба условия:
1. в строке ровно одно число повторяется трижды, ровно одно число повторяется дважды,
остальные числа без повторений;
2. максимальное из всех повторяющихся чисел строки больше наибольшего из её неповторяющихся чисел.
В ответе запишите только число.
"""
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел.
Определите количество строк таблицы, для чисел которых выполнены оба условия:
1. в строке ровно одно число повторяется трижды, ровно одно число повторяется дважды,
остальные числа без повторений;
2. максимальное из всех повторяющихся чисел строки больше наибольшего из её неповторяющихся чисел.
В ответе запишите только число.
"""
count = 0
for i in open('903'):
# переводим строку в список из семи целых чисел
a = [int(x) for x in i.split()]
# числа, встречающиеся ровно 3 раза, 2 раза и 1 раз
pov3 = [x for x in a if a.count(x) == 3]
pov2 = [x for x in a if a.count(x) == 2]
pov1 = [x for x in a if a.count(x) == 1]
# одно число трижды, одно дважды, два по одному разу
if len(pov3) == 3 and len(pov2) == 2 and len(pov1) == 2:
max_repeating = max(pov3[0], pov2[0])
max_non_repeating = max(pov1)
if max_repeating > max_non_repeating:
count = count + 1
print(count)
"""
Ответ: 1047
"""
"""
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел.
Определите количество строк таблицы, для чисел которых выполнены оба условия:
1. в строке ровно одно число повторяется трижды, ровно одно число повторяется дважды,
остальные числа без повторений;
2. максимальное из всех повторяющихся чисел строки больше наибольшего из её неповторяющихся чисел.
В ответе запишите только число.
"""
count = 0
for i in open('903'):
# переводим строку в список из семи целых чисел
a = [int(x) for x in i.split()]
# числа, встречающиеся ровно 3 раза, 2 раза и 1 раз
pov3 = [x for x in a if a.count(x) == 3]
pov2 = [x for x in a if a.count(x) == 2]
pov1 = [x for x in a if a.count(x) == 1]
# одно число трижды, одно дважды, два по одному разу
if len(pov3) == 3 and len(pov2) == 2 and len(pov1) == 2:
max_repeating = max(pov3[0], pov2[0])
max_non_repeating = max(pov1)
if max_repeating > max_non_repeating:
count = count + 1
print(count)
"""
Ответ: 1047
"""