Форум » Обработка числовых последовательностей » задача 3151 » Ответить

задача 3151

RainbowAqua: Здравствуйте, считаю(возможно ошибаюсь), что в данной задаче №27 ошибка(как в файле А, так и в файле В). Решение: [pre2] import sys sys.stdin = open('27-45b.txt') N = int(input()) s1 = [] s2 = [] s3 = 0 for i in range(N): a,b,c = map(int, input().split()) s = a+b+c s3 += min(a,b,c) s1.append(max(a,b,c)) s2.append(s - max(a,b,c) - min(a,b,c)) [/pre2] Дальше я проверяю всё вручную. Минимальная сумма 3-й группы получается(файл В) 151970635. сумма чисел 1-й группы и сумма чисел 2-й - четные числа, однако в каждой группе есть как и четные, так и нечетные числа: например в первой группе 6845, 9414 и во второй 4593, 7838. Так вот с помощью этих чисел мы можем изменить четность 1-й и 2-й группы, не трогая 3-ю: 1. Из 1-й вычитаем четное число(четность первой не меняется) и прибавляем его ко второй(четность также не меняется) 2. Вычитаем из 2-й нечетное(в итоге вторая группа вся нечетная, причем кол-во чисел в ней стало таким, как и было вначале) и прибавляем к 1-й(также становится нечетным и кол-во чисел не меняется).

Ответов - 1

RainbowAqua: Понял свою ошибку, не учел то, что в каждой группе наибольшие числа имеют одинаковую четность. Тему можно закрывать



полная версия страницы