아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

불안정한 수열

시간 제한1.5초메모리 제한1024 MB

요약
이웃한 두 수의 합이 항상 홀수가 되도록, 즉 홀짝이 번갈아 나오도록 가장 긴 부분수열을 골라 그 길이를 구한다.
난이도

보통10점 중 4점

유형
그리디, 배열, 동적 계획법
정답자
아직 제출이 없습니다

문제

NN개의 자연수가 좌우 일렬로 놓여 있다. 왼쪽에서 ii (1≤i≤N1 \le i \le N)번째에 놓여 있는 자연수는 A_iA\_i다.

여러분은 이 중 몇 개의 자연수를 원하는 만큼 고를 수 있다. 단, 아무 자연수도 고르지 않는 것은 허용되지 않으며, 반드시 11개 이상의 자연수를 골라야 한다.

여러분이 고른 자연수의 개수를 kk라고 하고, 고른 자연수들을 B_1B\_1, B_2B\_2, ⋯\cdots, B_kB\_k 라고 하자. 고른 자연수들의 순서는 기존에 놓여 있던 순서 그대로 유지된다.

예를 들어, N=5N = 5, A=\[3,1,4,1,5]A = \[3, 1, 4, 1, 5] 라고 하자. 여러분이 왼쪽에서 두 번째, 네 번째, 다섯 번째에 놓여 있는 자연수를 고르면, k=3k = 3이고, B=\[1,1,5]B = \[1,1,5]가 된다.

BB의 첫 번째 자연수와 두 번째 자연수의 합, 두 번째 자연수와 세 번째 자연수의 합, 세 번째 자연수와 네 번째 자연수의 합, ... 과 같이, 이웃한 두 자연수의 합을 구했을 때, 항상 홀수라면, BB를 불안정한 수열이라고 하자. k=1k = 1이면 특별히 BB는 불안정한 수열이라고 본다.

예를 들어, k=6k=6, B=\[1,4,3,2,5,4]B=\[1,4,3,2,5,4]라면, BB의 첫 번째 자연수(11)와 두 번째 자연수(44)의 합은 55로 홀수이고, 두 번째 자연수(44)와 세 번째 자연수(33)의 합은 77로 홀수이고, 세 번째 자연수(33)와 네 번째 자연수(22)의 합은 55로 홀수이고, 네 번째 자연수(22)와 다섯 번째 자연수(55)의 합은 77로 홀수이고, 다섯 번째 자연수(55)와 여섯 번째 자연수(44)의 합은 99로 홀수이므로, 이웃한 두 자연수의 합이 항상 홀수라서, BB는 불안정한 수열이다.

또한, k=1k=1, B=\[2]B=\[2]라면, k=1k=1이므로, BB는 불안정한 수열이다.

하지만, k=4k=4, B=\[4,5,1,2]B=\[4,5,1,2]라면, BB의 첫 번째 자연수(44)와 두 번째 자연수(55)의 합은 99로 홀수이지만, 두 번째 자연수(55)와 세 번째 자연수(11)의 합은 66으로 짝수이므로, 이웃한 두 자연수의 합이 홀수가 아닌 경우가 있어서, BB는 불안정한 수열이 아니다.

여러분은 BB가 불안정한 수열이 되도록 하면서, 가장 많은 개수의 자연수를 골라야 한다. 이 때, 최대 몇 개의 자연수를 고를 수 있는지 구하는 프로그램을 작성하라.

예를 들어, a=\[4,5,1,2]a=\[4,5,1,2]일 때를 살펴보자. 만약 모든 자연수를 고르면 B=\[4,5,1,2]B=\[4,5,1,2]가 되고, 이는 불안정한 수열이 아니므로, 44개의 자연수를 골라서 불안정한 수열을 만들 수는 없다. 하지만, 왼쪽에서 첫 번째, 세 번째, 네 번째에 놓여 있는 자연수를 고르면 B=\[4,1,2]B = \[4,1,2]가 되고, BB의 첫 번째 자연수(44)와 두 번째 자연수(11)의 합은 55로 홀수이고, 두 번째 자연수(11)와 세 번째 자연수(22)의 합은 33으로 홀수이므로, 이웃한 두 자연수의 합이 항상 홀수라서, BB는 불안정한 수열이다. 따라서, 33개의 자연수를 골라서 불안정한 수열을 만들 수 있으며, 이것이 최대이다.

입력

첫 번째 줄에 NN이 주어진다.

두 번째 줄에 A_1A\_1, A_2A\_2, ⋯\cdots, A_NA\_N이 공백을 사이에 두고 차례대로 주어진다.

출력

첫 번째 줄에 답을 출력한다.

제한

  • 주어지는 모든 수는 자연수다.
  • 1≤N≤300,0001 \le N \le 300\\,000
  • 1≤A_i≤100,0001 ≤ A\_i ≤ 100\\,000 (1≤i≤N1 ≤ i ≤ N)

예제3

  1. 예제 1

    입력
    4
    4 5 1 2
    
    예상 출력
    3
    
  2. 예제 2

    입력
    3
    3 2 3
    
    예상 출력
    3
    
  3. 예제 3

    입력
    5
    3 3 3 3 3
    
    예상 출력
    1