🎯 До ЕГЭ по информатике:
--дней
:
--часов
:
--минут
:
--секунд
Главная Шаблоны Задания Тренажёр Домашки Разборы
9

Электронные таблицы (CSV)

Открываем файл, парсим строки. Ищем повторяющиеся и уникальные элементы.

Python
f = open('9.txt')
for s in f:
    a = [int(x) for x in s.split()]  # или split(';') если файл csv

    povt = [x for x in a if a.count(x) == 2]  # ровно 2 раза
    razl = [x for x in a if a.count(x) == 1]  # уникальные
    kr5 = [x for x in a if x % 5 == 0]  # кратные 5
    dv = [x for x in a if len(str(x)) == 2]  # двухзначные

    a = sorted(a)  # для min/max

# Определите количество строк таблицы, в которых сумма
# наибольшего и наименьшего чисел меньше суммы двух оставшихся
k = 0
for s in open('09.txt'):
    a = sorted([int(x) for x in s.split()])
    if a[0]+a[3] < a[1]+a[2]:
        k += 1
print(k)

# Квадрат суммы макс и мин больше суммы квадратов остальных
k = 0
for s in open('09.txt'):
    a = sorted([int(x) for x in s.split()])
    if (a[0]+a[3])**2 > a[1]**2 + a[2]**2:
        k += 1
print(k)

# Наибольшее меньше суммы трёх остальных + ровно 1 пара равных
k = 0
for s in open('09.txt'):
    a = sorted([int(x) for x in s.split()])
    a2 = [x for x in a if a.count(x)==2]
    if a[3] < a[0]+a[1]+a[2] and len(a2)==2:
        k += 1
print(k)

# Все различны + квадрат макс меньше суммы квадратов остальных
k = 0
for s in open('09.txt'):
    a = sorted([int(x) for x in s.split()])
    if len(set(a))==3 and a[2]**2 < a[0]**2 + a[1]**2:
        k += 1
print(k)
Способ 2
# Ровно три числа повторяются дважды + 1 без повторений
# Среднее арифметическое повторяющихся меньше неповторяющегося
k = 0
for s in open('09.txt'):
    a = [int(x) for x in s.split()]
    a2 = [x for x in a if a.count(x)==2]
    a1 = [x for x in a if a.count(x)==1]
    if len(a2)==6 and len(a1)==1 and (min(a2)+max(a2))/2 < a1[0]:
        k += 1
print(k)

# Ровно одно число повторяется трижды + чётных больше нечётных
k = 0
for s in open('09.txt'):
    a = [int(x) for x in s.split()]
    a3 = [x for x in a if a.count(x)==3]
    ach = [x for x in a if x%2==0]
    anch = [x for x in a if x%2!=0]
    if len(a3)==3 and len(a1)==4 and len(ach)>len(anch):
        k += 1
print(k)

📚 Теория

Обработка CSV-файлов. Подсчёт строк по условиям на числа.