КЕГЭ 2022 по информатике. Задание №27. Python. Часть №2. Все задачи на пары чисел.
Вставка
- Опубліковано 3 лип 2024
- Разбор 27 задания ЕГЭ по информатике
#кегэ #егэ #27зачада #информатика #сложные27 #разбор #27зачада
0:00 Поляков. Задание №27.
09:07 Поляков. Задание №46.
16:07 Поляков. Задание №47.
19:55 Поляков. Задание №48.
26:45 Поляков. Задание №64.
49:30 Поляков. Задание №66.
58:05 Поляков. Задание №70.
Исправленная задача №70
f = open('27-70b.txt', 'r')
n = int(f.readline())
s = {0: 0}
sm = 0
kmax = 0
z = []
for i in range(n):
p = list(map(int, f.readline().split()))
sm += sum(p)
sums = [s[j] + k for j in s for k in p]
s = {x % 10: x for x in sorted(sums)}
for i in s:
if (s[i] - (sm - s[i])) % 5 == 0:
z.append(s[i] - (sm - s[i]))
print(max(z))
нечитабельный код увы
58:05 (№70) в сборнике ответы правильные. Проблема в решении. Когда мы ищем два словаря (минимальные и максимальные суммы) мы получаем разбивку на разные группы, которые будут частично пересекаться. Т.е. один элемент может дважды входить в обе группы или наоборот, не входить. В итоге мы будем получать суммы из групп чисел, которые не отвечают условию (ровно две непересекающихся группы из всех элементов). Нужно только один словарь заводить и искать сумму всех чисел. Далее вычитанием находим сумму второй группы. Далее разность этих сумм даст искомую разность. Успехов!
Да, точно. Перерешал примерно так же как и в 66 задаче. Спасибо!
Четвёртое часовое видео.
Согласен, надо урезать хрон.