9.02 Количество строк, удовлетворяющих условию
Ошибка.
Попробуйте повторить позже
Откройте файл электронной таблицы, содержащей в каждой строке шесть натуральных чисел. Определите количество строк таблицы, содержащих числа, для которых выполнены оба условия:
— в строке только одно число повторяется ровно два раза, остальные числа различны;
— сумма максимального и минимального значения в строке кратна 22.
В ответе запишите только число.
Решение Excel:
Откроем файл электронной таблицы и для начала посчитаем при помощи функции СЧЁТЕСЛИ сколько раз каждое число встречается в строке. Формула (напишем ее в столбец G) для первого числа будет выглядеть таким образом: =СЧЁТЕСЛИ($A1:$F1;A1). Протянем данную формулу на следующие 5 столбцов.
Если сумма столбцов F:J равна 8, значит, только одно число встречается дважды, а оставшиеся числа встречаются единожды. Запишем в столбец M формулу: =ЕСЛИ(СУММ(G1:L1) = 8;1;0)
Проверим, что сумма максимального и минимального числа в строке кратна 22. Для этого запишем формулу в столбец N: =ЕСЛИ(ОСТАТ(МАКС(A1:F1)+МИН(A1:F1);22)=0;1;0).
Осталось проверить, что два условия выполняются одновременно для строки. Для этого запишем формулу в столбец O: =ЕСЛИ(M1+N1=2;1;0). Считаем сумму столбца O и получаем 17.
Решение Python
Сначала мы открываем файл с таблицей и считываем все его строки. Для этого используем метод readlines(), который сохраняет каждую строку файла в отдельный элемент списка. После этого мы начинаем построчно работать с данными.
Каждую строку мы преобразуем в список чисел. Для этого применяем метод split(), который разделяет строку по пробелам, затем с помощью map(int, ...) переводим элементы в целые числа, а list(...) формирует итоговый список. Таким образом, каждая строка таблицы становится массивом из шести чисел.
Далее мы проверяем выполнение двух условий:
1. В строке только одно число повторяется ровно два раза, а остальные числа различны.
– Для проверки используем разность между длиной исходного списка и длиной множества (set).
– Функция set(nums) удаляет все повторяющиеся элементы, поэтому если в строке ровно одна пара одинаковых чисел, то общее количество элементов (6) будет на 1 больше, чем количество различных элементов.
2. Сумма максимального и минимального числа в строке кратна 22.
– Для этого используем функции max() и min() для нахождения наибольшего и наименьшего значения.
– Складываем их и проверяем делимость на 22 с помощью операции % (остаток от деления).
Если оба условия выполняются одновременно, увеличиваем счётчик на 1. После завершения обработки всех строк выводим результат.
f = open(’9.txt’, ’r’) # Открываем файл для чтения lines = f.readlines() # Считываем все строки в список count = 0 # Счётчик подходящих строк # Перебираем каждую строку файла for line in lines: nums = list(map(int, line.split())) # Преобразуем строку в список чисел # Проверяем первое условие: только одно число встречается дважды if len(nums) - len(set(nums)) == 1: # Проверяем второе условие: сумма max и min кратна 22 if (max(nums) + min(nums)) % 22 == 0: count += 1 # Увеличиваем счётчик, если оба условия выполнены print(count) # Выводим количество подходящих строк
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!