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

30400번 - 팰린드롬 제거

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

문제

이안이는 팰린드롬을 싫어한다. 팰린드롬인 단어를 보면 당장 그 단어를 지워야 할 정도로 팰린드롬을 매우 싫어한다. 팰린드롬은 'level', 'bob'과 같이 양쪽으로 읽었을 때 동일하게 읽히는 단어이다.

이제 이안이는 팰린드롬이 아닌 단어더라도 부분문자열 중 팰린드롬이 있기만 해도 그 단어를 지우고 싶을 정도가 되었다. 하지만 그렇게 하면 남는 단어가 거의 없을 것이다. 대신 글자 몇 개를 부숴 길이가 $M$ 이상인 팰린드롬인 부분문자열이 없도록 만들려고 한다.

글자를 부수면 부서진 글자가 포함된 문자열은 팰린드롬이 될 수 없다. 예를 들어 abcba에서 가운데 c를 부수면 ab#ba가 되고, 이는 팰린드롬이 아니다.

banana는 부분문자열 중 anana, ana, nan이 팰린드롬이므로 글자를 부숴야 한다. $M = 2$인 경우 두 번째 a를 부수면 ban#na와 같이 길이가 2ドル$ 이상인 팰린드롬인 부분문자열이 없도록 할 수 있다.

글자를 부수는 건 매우 귀찮은 일이다. 이안이를 도와 부숴야 하는 글자 개수의 최솟값을 구해보자.

입력

첫 번째 줄에 단어의 길이 $N,ドル 싫어하는 팰린드롬의 길이인 $M$이 공백으로 구분되어 주어진다.

두 번째 줄에 길이 $N$인 단어가 한 줄에 주어진다.

출력

길이가 $M$ 이상인 팰린드롬인 부분문자열이 없도록 만들기 위해 부숴야 하는 글자 개수의 최솟값을 출력한다.

제한

  • 2ドル\le N\le 2 \times 10^5$
  • 2ドル\le M \le N$
  • 주어진 문자열은 알파벳 소문자로만 이루어져 있다.

예제 입력 1

6 2
aaaaaa

예제 출력 1

3

예제 입력 2

7 3
bananas

예제 출력 2

1

4번째 글자인 a를 손상시키면 된다.

노트

출처

School > DGUPC > 제 1회 DGUPC G번

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

출처

대학교 대회

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

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