Logo
(追記) (追記ここまで)

32711번 - 홀수로 나눠라! 짝수로 나눠라!

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB60421518139.520%

문제

양의 정수로 이루어진 길이 $N$의 수열 $A$가 주어졌을 때, 연속된 원소들을 묶어 수열을 한 개 이상의 집합으로 나누어야 한다. 집합을 나눌 때는 홀수로 나누기 혹은 짝수로 나누기 중 하나의 방법을 선택할 수 있다. 또한, 수열의 모든 원소는 나눈 집합 중 정확히 하나에 속해야 한다.

  • 홀수로 나누기
    • 각 집합을 이루는 원소의 합은 홀수여야 한다.
    • 수열을 홀수 개의 집합으로 나누어야 한다.
  • 짝수로 나누기
    • 각 집합을 이루는 원소의 합은 짝수여야 한다.
    • 수열을 짝수 개의 집합으로 나누어야 한다.

둘 중 하나의 방법을 선택하여 주어진 수열을 한 개 이상의 집합으로 나눌 수 있는지를 판별해 보자.

입력

첫째 줄에 수열 $A$의 길이 $N$이 주어진다. $\left(1\leq N\leq 200,000\right)$

둘째 줄에 수열의 원소 $A_i$가 공백으로 구분되어 주어진다. $\left(1\leq A_i\leq 10^9\right)$

출력

주어진 방법 중 하나를 선택하여 수열을 한 개 이상의 집합으로 나눌 수 있다면 1, 아니라면 0을 출력한다.

제한

예제 입력 1

5
1 2 1 2 1

예제 출력 1

1

예제 입력 2

6
1 2 4 4 2 1

예제 출력 2

0

예제 입력 3

7
1 2 4 3 2 2 2

예제 출력 3

1

노트

입출력의 양이 많으므로, 빠른 입출력을 사용하는 것을 권장합니다. 대표적인 언어에 따른 빠른 입출력은 아래를 참고하세요.

  • C++: cin, cout을 사용하는 경우 입출력 전에 cin.tie(nullptr); ios::sync_with_stdio(false);를 한 번 적용해야 합니다. 줄 바꿈할 때는 endl 대신 ‘\n’을 사용해야 합니다.
  • Java: BufferedReaderBufferedWriter를 사용해야 합니다.
  • Python3, PyPy3: input() 대신 sys.stdin.readline().rstrip()을 사용해야 합니다.

출처

University > 건국대학교 > 2024 건국대학교 프로그래밍 경진대회 (KUPC) B번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /