Олимпиадный тренинг

Задача . B. Максимальный непрерывный отдых


Задача

Темы: реализация *900

Сутки в Берляндии состоят из \(n\) часов. Поликарп — фанат тайм- менеджмента. Вот почему каждые сутки он использует одно и то же расписание — последовательность \(a_1, a_2, \dots, a_n\) (каждое \(a_i\) равно либо \(0\) либо \(1\)), где \(a_i=0\), если Поликарп работает в \(i\)-й час суток, и \(a_i=1\), если Поликарп отдыхает в \(i\)-й час суток.

Дни идут один за другим бесконечно, Поликарп использует одно и тоже расписание каждые сутки.

Какая длина в часах наибольшего непрерывного периода отдыха Поликарпа? Гарантируется, что в расписании есть хотя бы один рабочий час.

Входные данные

Первая строка содержит целое \(n\) (\(1 \le n \le 2\cdot10^5\)) — количество часов в сутках.

Вторая строка содержит \(n\) целых чисел \(a_1, a_2, \dots, a_n\) (\(0 \le a_i \le 1\)), где \(a_i=0\), если \(i\)-й час суток является рабочим, и \(a_i=1\), если \(i\)-й час является отдыхом. Гарантируется, что \(a_i=0\) хотя бы для одного индекса \(i\).

Выходные данные

Выведите продолжительность в часах максимального непрерывного периода отдыха Поликарпа. Обратите внимание, что сутки следуют друг за другом бесконечно, каждые сутки проходят по одному и тому же расписанию.

Примечание

В первом примере максимальный отдых начинается в последний час суток и заканчивается в первый час следующего дня.

Во втором примере максимальный отдых Поликарпа начинается в \(4\)-й час суток и заканчивается в \(5\)-й час суток.

В третьем примере максимальный отдых идёт с \(3\)-го по \(5\)-й час суток.

В четвертом примере Поликарп вообще не отдыхает.


Примеры
Входные данныеВыходные данные
1 5
1 0 1 0 1
2
2 6
0 1 0 1 1 0
2
3 7
1 0 1 1 1 0 1
3
4 3
0 0 0
0

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя