Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/65: Рейтинг темы: голосов - 65, средняя оценка - 4.86
5 / 5 / 0
Регистрация: 21.03.2021
Сообщений: 8

Не могу сделать 27 задание ЕГЭ по информатике

15.06.2021, 17:14. Показов 12711. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ниже буде код, который был составлен для решения 27 задания с сайта "Решу ЕГЭ". Задание под номером "36040". Код вывел правильный ответ к первому файлу, но со вторым какие-то проблемы. Помогите, пожалуйста.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
with open("Файл","r") as f:
    n = int(f.readline())
    s = 0
    min_raz = 20001
    min_raz1 = 20001
    min_raz2 = 20001
    min_raz3 = 20001
    print(n)
    for i in range(n):
        x, y, z = map(int, f.readline().split())
        s = s+max(x, y, z)
        raz1 = abs(x - y)
        raz2 = abs(x - z)
        raz3 = abs(y - z)
        if raz1 % 109 != 0:
            min_raz1 = min(raz1, min_raz)
        if raz2 % 109 != 0:
            min_raz2 = min(raz2, min_raz)
        if raz3 % 109 != 0:
            min_raz3 = min(raz3, min_raz)
        min_raz = min(min_raz1, min_raz2, min_raz3)
    print(min_raz)
    if s % 109 != 0:
        print(s)
    else:
        print(s - min_raz)
        print(s)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.06.2021, 17:14
Ответы с готовыми решениями:

Задание из ЕГЭ по информатике
Для заданной последовательности неотрицательных целых чисел необходимо найти максимальное произведение двух её элементов, номера которых...

Задание ЕГЭ по информатике (27)
Дана последовательность целых положительных чисел. Рассматриваются все пары элементов последовательности, сумма которых делится на m=80 ...

12 задание ЕГЭ по информатике
Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w...

11
Эксперт Python
8840 / 4492 / 1864
Регистрация: 27.03.2020
Сообщений: 7,312
15.06.2021, 17:31
Shreding, а текст задания?
0
5 / 5 / 0
Регистрация: 21.03.2021
Сообщений: 8
15.06.2021, 18:53  [ТС]
Имеется набор данных, состоящий из троек положительных целых чисел. Необходимо выбрать из каждой тройки ровно одно число так, чтобы сумма всех выбранных чисел не делилась на k = 109 и при этом была максимально возможной. Гарантируется, что искомую сумму получить можно. Программа должна напечатать одно число — максимально возможную сумму, соответствующую условиям задачи.

Входные данные.

Файл A

Файл B

Даны два входных файла (файл A и файл B), каждый из которых содержит в первой строке количество троек N (1 ≤ N ≤ 1 000 000). Каждая из следующих N строк содержит три натуральных числа, не превышающих 20 000.

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

6

1 3 7

5 12 6

6 9 11

5 4 8

3 5 4

1 1 1

Для указанных входных данных, в случае, если k = 5, значением искомой суммы является число 44.

В ответе укажите два числа: сначала значение искомой суммы для файла А,

затем для файла B.

Добавлено через 46 минут
Gdez, я сверху написал условия задачи.
0
Эксперт Python
8840 / 4492 / 1864
Регистрация: 27.03.2020
Сообщений: 7,312
15.06.2021, 19:13
Shreding, по времени не проходит?
0
5 / 5 / 0
Регистрация: 21.03.2021
Сообщений: 8
15.06.2021, 19:14  [ТС]
Gdez, нет, ответ не тот выдаёт.
0
Эксперт Python
8840 / 4492 / 1864
Регистрация: 27.03.2020
Сообщений: 7,312
15.06.2021, 19:24
Shreding,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
with open("27_B.txt") as f:
    n = int(f.readline())
    s = 0
    min_diff = 20001
    print(n)
    for i in range(n):
        x = sorted(list(map(int, f.readline().split())))
        s = s+x[2]
        diff1 = x[2] - x[1]
        diff2 = x[2] - x[0]
        min_diff = min(min_diff, (diff1 if diff1%109 else 20001), (diff2 if diff2%109 else 20001))
    print(min_diff)
    if s % 109 != 0:
        print(s)
    else:
        print(s - min_diff) # 8819088760
        print(s)
0
5 / 5 / 0
Регистрация: 21.03.2021
Сообщений: 8
15.06.2021, 19:27  [ТС]
Gdez, такой вопрос, почему ты от x[1] не отнимаешь x[0]?
0
Эксперт Python
8840 / 4492 / 1864
Регистрация: 27.03.2020
Сообщений: 7,312
15.06.2021, 19:44
Лучший ответ Сообщение было отмечено Shreding как решение

Решение

Shreding, выбираем максимумы (по одному). В случае суммы%109 максимумы меняем на одно(!) из двух чисел -> либо на х[1] либо на х[0]
х[1] на х[0] или обратно не меняется -> их в накопительной сумме нет
0
5 / 5 / 0
Регистрация: 21.03.2021
Сообщений: 8
15.06.2021, 19:47  [ТС]
Gdez, хорошо, а что выполнятся этим фрагментом:"(diff1 if diff1%109 else 20001)"? Я понял, что это значение, но что происходит для его образования?
0
Эксперт Python
8840 / 4492 / 1864
Регистрация: 27.03.2020
Сообщений: 7,312
15.06.2021, 19:53
Лучший ответ Сообщение было отмечено Shreding как решение

Решение

Shreding, если есть остаток на 109, то берем diff1; если делится без остатка, то 20001 (по сути "не учитываем", ведь min_diff меньше 20001, и по условию есть решение, т.е. либо полученная сумма не делится нацело на 109, либо существует min_diff, меньше 20001 и не делящийся нацело на 109)
1
5 / 5 / 0
Регистрация: 21.03.2021
Сообщений: 8
15.06.2021, 19:58  [ТС]
Gdez, спасибо, но остался последний вопрос. Зачем нужен "list"разве без него работать не будет? И поясни, пожалуйста.
0
Эксперт Python
8840 / 4492 / 1864
Регистрация: 27.03.2020
Сообщений: 7,312
15.06.2021, 20:17
Лучший ответ Сообщение было отмечено Shreding как решение

Решение

Shreding, верно (по привычке )
Лучше
Python
1
x0, x1, x2 = sorted(map(int, f.readline().split()))
Заменив х[0], х[1] и х[2] в коде соответсвенно
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.06.2021, 20:17
Помогаю со студенческими работами здесь

26 - ое задание егэ, магазине проводят акция – каждый второй товар со скидкой
Здравствуйте, помогите, пожалуйста, с решением данной задачи. Хочу найти решение именно в экселе, знаю, что целесообразнее ее решать...

5 задание ЕГЭ по информатике
Автомат получает на вход четырёхзначное десятичное число, в котором все цифры нечётные. По этому числу строится новое число по следующим...

Задание из Егэ по информатике (27)
Прорешивая егэшные задания, столкнулся вот с таким примером... Условие: Дана последовательность N целых положительных чисел. ...

Задание 17 по информатике ЕГЭ 2015
Помогите решить номер 17. ---

Задание 27 № 33106 ЕГЭ по информатике
Я решил ниже описанную задачу и уверен в своём решении, но ответ у меня не совпадает. Мой код внизу. Ответ на сайте: A ответ — 67407, из...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru