Задание №27 — Оптимальный алгоритм для большого количества данных

К списку заданий
#69669Задание №27ФИПИ
Анализ данных

Имеется набор данных, состоящий из пар положительных целых чисел. Необходимо выбрать из каждой пары ровно одно число так, чтобы сумма всех выбранных чисел не делилась на 35 и при этом была максимально возможной. Гарантируется, что искомую сумму получить можно.
Программа должна напечатать одно число — максимально возможную сумму, соответствующую условиям задачи.
Входные данные:
Даны два входных файла (файл А и файл В), каждый из которых содержит в первой строке количество пар N (1N100000).( 1 \leq N \leq 100000 ) . Каждая из следующих N строк содержит два натуральных числа, не превышающих 10000.
В ответе укажите два числа: сначала значение искомой суммы для файла А, затем для файла В.

Пример организации исходных данных во входном файле:
6
1 3
5 12
6 9 
5 4
3 3
1 1

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

44351_27_A.txt

44351_27_B.txt