Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
 Аватар для Tipsy_guy
0 / 0 / 0
Регистрация: 31.03.2022
Сообщений: 15

Определить, сколько в наборе таких пар чётных чисел, что их среднее арифметическое тоже присутствует в файле

02.07.2022, 14:44. Показов 2179. Ответов 5

Студворк — интернет-сервис помощи студентам
Задачка с сайта егэ:
В текстовом файле записан набор натуральных чисел, не превышающих 10^9. Гарантируется, что все числа различны. Необходимо определить, сколько в наборе таких пар чётных чисел, что их среднее арифметическое тоже присутствует в файле, и чему равно наибольшее из средних арифметических таких пар.

Первая строка входного файла содержит целое число N — общее количество чисел в наборе. Каждая из следующих N строк содержит одно число.

В ответе запишите два целых числа: сначала количество пар, затем наибольшее среднее арифметическое.

Пример входного файла:

6

3

8

14

11

2

17

В данном случае есть две подходящие пары: 8 и 14 (среднее арифметическое 11), 14 и 2 (среднее арифметическое 8). В ответе надо записать числа 2 и 11.

Так вот в чём вопрос, пытался решить на питоне, программа выдаёт пустой список. Почему? Хороший вопрос, на который надеюсь вы ответите.

Python
1
2
3
4
5
6
7
8
9
10
11
12
with open('26.txt') as f:
    s = [int(x) for x in f]
    res = []
    u=[]
    for i in range(2,len(s)):
        if  s[i]%2==0 and s[i-1]%2==0:
            u.append((s[i]+s[i-1])/2)
    for k in range(1,len(s)):
        if k in u:
            res.append(k)
 
print(len(res),max(res))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.07.2022, 14:44
Ответы с готовыми решениями:

Определить, сколько в текстовом файле пар чётных чисел, среднее арифметическое которых также присутствует в файле
Дана задача В текстовом файле записан набор натуральных чисел, не превышающих 109. Гарантируется, что все числа различны. Необходимо...

Определить, сколько в наборе таких пар чисел, что числа в паре имеют одинаковую чётность
В текстовом файле записан набор натуральных чисел, не превышающих 1000000000. Гарантируется, что все числа различны. Необходимо определить,...

Сколько в наборе таких пар чисел, что числа в паре имеют одинаковую чётность
В текстовом файле записан набор натуральных чисел, не превышающих 1000000000. Гарантируется, что все числа различны. Необходимо определить,...

5
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38171 / 21106 / 4307
Регистрация: 12.02.2012
Сообщений: 34,699
Записей в блоге: 14
02.07.2022, 19:25
Цитата Сообщение от Tipsy_guy Посмотреть сообщение
программа выдаёт пустой список. Почему?
- потому, что ты проверяешь только соседние числа. А проверять нужно все пары. Кроме того, ты используешь не ту операцию деления. Нужно использовать не "/", а "//"
0
2 / 0 / 2
Регистрация: 01.04.2022
Сообщений: 10
02.07.2022, 19:59
Цитата Сообщение от Tipsy_guy Посмотреть сообщение
8 и 14 (среднее арифметическое 11), 14 и 2 (среднее арифметическое 8)
(11 + 17) / 2 = 14 Это же тоже пара чисел?)

Добавлено через 4 минуты
Python
1
2
3
4
5
6
7
8
9
10
with open('test.txt', "r", encoding="utf-8") as f:
    s = [int(x) for x in f]
    res = []
    for i in range(1, s[0]+1):
        for x in range(i+1, s[0]+1):
            if (s[i] + s[x]) / 2 in s:
                if ((s[i] + s[x]) / 2) not in res:
                    res.append((s[i] + s[x]) / 2)
 
    print(f"Количество пар: {len(res)},\nНаибольшее среднее арифметическое: {int(max(res))}")
0
Вирусоборец
 Аватар для thyrex
14444 / 7486 / 1579
Регистрация: 06.09.2009
Сообщений: 27,129
02.07.2022, 23:57
fastbloodjke, по условию нужны пары четных чисел
0
2 / 0 / 2
Регистрация: 01.04.2022
Сообщений: 10
03.07.2022, 06:02
Не заметил условие про то, что нужны пары четных чисел
Python
1
2
3
4
5
6
7
8
9
10
11
with open('test.txt', "r", encoding="utf-8") as f:
    s = [int(x) for x in f]
    res = []
    for i in range(1, s[0] + 1):
        for x in range(i + 1, s[0] + 1):
            if s[i] % 2 == 0 and s[x] % 2 == 0:
                if (s[i] + s[x]) / 2 in s:  
                    if ((s[i] + s[x]) / 2) not in res:
                        res.append((s[i] + s[x]) / 2)
 
    print(f"Количество пар: {len(res)},\nНаибольшее среднее арифметическое: {int(max(res))}")
0
Вирусоборец
 Аватар для thyrex
14444 / 7486 / 1579
Регистрация: 06.09.2009
Сообщений: 27,129
03.07.2022, 08:47
fastbloodjke, по-прежнему теряете пары в ответе

Добавлено через 10 минут
Да и ошибка выхода за пределы списка обеспечена
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.07.2022, 08:47
Помогаю со студенческими работами здесь

Найдите среднее арифметическое чётных чисел. Если таких нет, выведите “Чётных чисел нет”
Есть N и последовательность N целых чисел. Найдите среднее арифметическое чётных чисел. Если таких нет, выведите “Чётных чисел нет”. ...

Сколько существует пар натуральных чисел x>y таких, что их произведение на 15124 больше их суммы?
Сколько существует пар натуральных чисел x>y таких, что их произведение на 15124 больше их суммы?

Сколько существует пар натуральных чисел х > у таких, что их произведение на 19999 больше их суммы?
Сколько существует пар натуральных чисел х > у таких, что их произведение на 19999 больше их суммы?

Определить среднее арифметическое четных чисел и среднее арифметическое нечетных чисел
Пользователь вводит 12 целых чисел. Определить среднее арифметическое четных чисел и среднее арифметическое нечетных чисел.

Определить, сколько среди заданных чисел таких пар, в которых первое число больше следующего
Определить, сколько среди заданных чисел таких пар, в которых первое число больше следующего Заранее спасибо!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru