Первая позиция отрицательного баланса
Просмотр в формате PDFВо время подсчёта голосов за одного кандидата поступает последовательность изменений его баланса поддержки. Каждое событие либо увеличивает баланс на +1, либо уменьшает его на -1.
Нужно просматривать события слева направо и поддерживать текущий суммарный баланс. Требуется определить наименьшую позицию i, на которой баланс после первых i событий впервые становится отрицательным.
Если баланс ни на одной позиции не уходит в минус, выведите -1.
Входные данные
В первой строке задано число n — количество событий (1 <= n <= 2*10^5).
Во второй строке заданы n чисел a_i, каждое из которых равно 1 или -1.
Выходные данные
Выведите наименьшую позицию с нумерацией от 1, на которой префиксная сумма впервые становится отрицательной, либо -1, если такой позиции нет.
Ограничения
1 <= n <= 2*10^5a_iравно1или-1- ввод осуществляется через стандартный ввод
- вывод осуществляется через стандартный вывод
Примеры
Пример 1
Входные данные
1
-1
Выходные данные
1
Пример 2
Входные данные
1
1
Выходные данные
-1
Комментарии