Команда пиратов уже целый год вместе, и за это время они успели заработать много денег и много штрафов. По итогу года было решено разделить награбленное между командой. По старым пиратским обычаям нельзя просто так разделить поровну, этот вопрос касается и чести пирата. Для решения этого вопроса они открыли древний кодекс, который описывал, как делить в таком случае.
Нулевое правило кодекса гласило: «Награда и штрафы неделимы». Иными словами, итоговая сумма с $$$i$$$-го дела может достаться только одному пирату. При этом нельзя, чтобы сумма не досталась никому.
Первое правило кодекса гласило : «Каждый пират не может уйти в долгах или с ничем». То есть каждый пират суммарно получит положительную сумму монет.
Второе правило кодекса гласило: «Раздел должен быть непрерывным, как путь корабля». То есть дела нельзя разрывать или переставлять – каждый пират получает свою долю только из последовательных дел, как они шли в хронике года.
Третье правило кодекса гласило: «Младшим надо уступать». Это означало, что в начале самый младший выберет первые $$$s_1$$$ дел, затем второй по старшинству выберет следующие $$$s_2$$$ дел и так далее.
Четвертое правило кодекса гласило: «Старших надо уважать». Это означало, что если старший пират получил свою долю, то младший не может получить больше, иначе это будет ударом по репутации. Таким образом, заработанные суммы должны идти в порядке неубывания.
Пятое правило кодекса гласило: «Подумай о ближнем». Для пиратов это правило значило, что как можно больше пиратов должно уйти с деньгами, и они все преследовали эту цель.
Теперь им осталось понять, какое максимальное количество пиратов заработали в этом году. Помогите им с этой задачей.
В первой строке входных данных дано число $$$n$$$ — суммарное количество кладов и штрафов $$$(1 \le n \le 10^5)$$$.
Во второй строке дан массив целых чисел $$$a_1, a_2, \ldots, a_n$$$, где значение $$$a_i$$$ означает, что получили пираты с $$$i$$$-го дела. Если $$$a_i \ge 0$$$, то они заработали $$$a_i$$$ монет, иначе они получили штраф $$$-a_i$$$ монет.
Гарантируется, что $$$a_1 + a_2 + \ldots + a_n \gt 0$$$ и $$$|a_1| + |a_2| + \ldots + |a_n| \le 10^5$$$.
Выведите, какому максимальному количеству пиратов можно выдать награду.
Тесты в этой задаче разбиты на 5 групп. Баллы за группу начисляются при прохождении всех тестов этой и всех необходимых групп. Примеры из условия не оцениваются.
| Подзадача | Баллы | Доп. ограничения | Необх. подзадачи | |
| 1 | 14 | $$$n \le 15$$$ | ||
| 2 | 20 | $$$n \le 10^3$$$ | 1 | |
| 3 | 18 | $$$0 | lt; a_1 \le a_2 \ldots \le a_n$$$ | |
| 4 | 19 | $$$|a_1| + |a_2| + \ldots + |a_n| \le 100$$$ | ||
| 5 | 29 | $$$n \le 10^5$$$ | 1–4 |
31 2 3
3
57 -5 3 -1 4
3
Во втором примере пираты могут получить (7 - 5), (3 - 1), 4