ページが読み込まれませんか? こちらをクリックすると直るかもしれません。
Placeholder

#2277

[고등부] 2024 KOI 2차대회 대비 모의고사 (1주차)

스위치 누르기2
サブタスク
1秒 1024MB

問題

N 개의 스위치가 있다. 각 스위치의 상태는 0 또는 1 이다.

  • 상태 0 인 스위치를 누르면 1 이 되고,

  • 상태 1 인 스위치를 누르면 0 이 된다.

안타깝게도 스위치의 크기가 너무 작고 손가락은 굵어서 어떠한 스위치를 누를 때 연속된 K개의 스위치가 함께 눌린다.

가장자리에 있는 스위치의 경우 벽에 인접해 있기에 마찬가지로 개별적으로 누르는 것이 불가능하고 무조건 K개가 함께 눌린다.

예를 들어 K = 3 이고 N=6 인 스위치의 상태가 0\ 0\ 1\ 0\ 0\ 1 인 경우 아래와 같이 두 번 누르면 모든 스위치를 0으로 만들 수 있다

초기 상태 : 0\ 0\ 1\ 0\ 0\ 1

한번 누름 : 0\ 0\ 0\ 1\ 1\ 1

두번 누름 : 0\ 0\ 0\ 0\ 0\ 0

NK 그리고 N개의 스위치 상태를 입력 받았을 때, 모든 스위치의 상태가 0이 되도록 스위치를 누르는 최소 횟수를 출력하자.


入力

첫 줄에 두 정수 N, K가 주어진다. (1 \le K \le N \le 300\ 000)

두 번째 줄에 N개의 스위치의 상태가 주어진다.


出力

첫 줄에 모든 스위치의 상태가 0이 되도록 스위치를 누르는 최소 횟수를 출력한다.

만약 모든 스위치의 상태를 0으로 만드는 것이 불가능하다면 -1을 출력한다.


部分問題

番号 点数 条件
#15点

K=1

#211点

K=2

#323点

N \le 6

#429点

N \le 200

#532点

추가 제한 없음


例題 #1

6 3
0 0 1 0 0 1
2

例題 #2

6 3
0 1 0 0 1 1
-1
ログインしないとコードを書けません。