분할

면접 대비

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

요약
크기 N인 정수 배열을 N보다 짧은 같은 길이의 연속 구간으로 나눌 때, 모든 구간에서 최솟값과 최댓값의 합이 같아지도록 분할할 수 있는지 판정한다.
난이도

보통10점 중 6점

유형
배열, 완전 탐색, 정수론, 구현
정답자
아직 제출이 없습니다

문제

크기 NN의 정수 배열 AA가 있다. 다음 조건을 만족하도록 배열을 연속 구간으로 분할하는 것이 가능한지 판단하시오.

  • 배열의 모든 원소가 정확히 하나의 구간에 포함된다.
  • 각 구간의 크기는 11 이상 NN 미만이며, 모든 구간의 크기는 같다.
  • 각 구간에서 최솟값과 최댓값을 더한 값이 모든 구간에서 같다.

입력

첫째 줄에 배열의 크기 NN이 주어진다. (2≤N≤100,000)(2\leq N \leq 100\\,000)

둘째 줄에 AA의 원소 A_1,A_2,A_3,⋯ ,A_NA\_{1}, A\_{2}, A\_{3}, \cdots, A\_{N}이 공백으로 구분되어 주어진다. (1≤A_i≤N)(1\leq A\_{i} \leq N)

출력

조건을 만족하도록 배열을 분할하는 것이 가능하다면 11을, 그렇지 않다면 00을 첫째 줄에 출력한다.

예제3

  1. 예제 1

    입력
    9
    1 9 4 3 5 7 6 8 2
    
    예상 출력
    1
    
  2. 예제 2

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

    입력
    4
    1 3 2 4
    
    예상 출력
    0