Эффективное программирование
Даня и Ваня решили быстро съесть купленную еду. Они выложили еду на стол в ряд (от левого края до правого края) и дали ей каждой свою «пищевую ценность». Они сели на два края стола (слева и справа) и съедают продукты только те, которые ближе к ним в определённый момент времени. Если продукт съедается, он пропадает со стола. Они хотят поделить еду честно, то есть чтобы суммарная полученная пищевая ценность была у них одинаковая. Но при этом они хотят съесть как можно больше. Определите, какое наибольшее количество продуктов они могут съесть суммарно, при этом, чтобы суммарная ценность была максимально возможная.
Входные данные:
Даны два входных файла (файл A и файл B), каждый из которых содержит в первой строке количество продуктов N (1 ≤ N ≤ 10 000 000). Каждая из следующих N строк содержит пищевые ценности продуктов. Продукты последовательно выкладываются слева направо (Самому левому продукту соответствует первый продукт в файле, самому правому продукту - последний продукт в файле).
Пример входных данных:
6
3
6
1
2
4
3
Для данного примера ответ – 5. Даня съедает 2 продукта слева (3 и 6, суммарная пищевая ценность равна 9), Ваня съедает 3 продукта справа (3, 4 и 2, суммарная пищевая ценность равна 9).