메뉴 건너뛰기

문제

00c18 조명 0  

시간메모리제출 올바른 답 비율
1초64MB
28
18
64.3%


나의 횟수나의 최근 판정시도 성공 비율
66
100.0%
조명  

KOI 고등학교 축제에는 매년 복도에 조명이 설치된다. 조명은 N개의 전구로 구성되며 복도의 서쪽에서 동쪽으로 일렬로 줄 지어있다. 각 전구는 불이 켜져 있거나 꺼져 있다.

KOI 고등학교 창고에는 이러한 조명시설을 조작하는 낡은 기계가 있는데, 구간을 입력한 후 스위치를 누르면 조명시설의 해당 구간에 있는 전구들에 대해서 켜져 있는 전구를 꺼지도록, 꺼져있는 전구를 켜지도록 한다. 즉, 입력한 구간에 위치한 전구들의 상태를 반전시킨다. 그러나 이 기계는 많이 낡아 있기 때문에 1회만 사용 가능하다.

KOI 고등학교 학생들은 이 기계를 1회 사용하여 전구들의 상태가 교대로 반복되는 구간, 즉 교대 구간의 길이를 최대화하려고 한다.

예를 들어 다음과 같은 조명 시설이 초기에 설치되어 있다고 하자(○ 켜진 전구, ● 꺼진 전구). 이때 구간으로 4와 7를 입력하고(아래의 박스 처리 구간) 스위치를 누르면 다음과 같이 교대 구간의 길이가 7(아래의 밑줄이 있는 구간)이 된다.

만약 6번째 전구에 대해서만 스위치를 눌러도 교대 구간의 길이가 7이 된다.

기계를 최대 1회 사용하는 것으로는 길이가 8 이상인 교대 구간을 만들 수 없다. 조명 시설로 설치한 전구들의 초기 상태가 입력될 때 기계를 최대 1회 사용함으로써 얻을 수 있는 교대 구간의 최대 길이를 구하는 프로그램을 작성하시오.

입력

첫 번째 줄에 전구의 개수 이 주어진다. 두 번째 줄에 N개의 0 또는 1이 서쪽에서 동쪽으로 설치된 순서대로 공백을 사이에 두고 주어진다. 0은 꺼진 전구를, 1은 켜진 전구를 나타낸다.

※ 테스트 데이터 조건
전체 테스트 데이터의 20%는 N≤50.
전체 테스트 데이터의 40%는 N≤2000.

출력

첫 번째 줄에 교대 구간의 최대 길이를 출력한다.

※ 예시 2 : 4번째 전구에 대해서만 기계를 조작한 결과임.
※ 예시 3 : 2번째에서 4번째까지의 전구에 대해서 기계를 조작한 결과임.
※ 예시 4 : 기계를 조작하기 않거나 전체 조명에 대해서 기계를 조작한 결과임.

예시
1입력
10
1 1 0 0 1 0 1 1 1 0
출력
7
2입력
10
1 0 0 0 0 1 0 1 0 1
출력
8
3입력
5
1 1 0 1 1
출력
5
4입력
3
0 1 0
출력
3
위로