만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

같은 글자

면접 대비

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

요약
소문자로 된 문자열 S와 정수 m이 주어질 때, 최대 m개의 문자를 지워 만들 수 있는 같은 문자의 가장 긴 연속 구간의 길이를 구합니다.
난이도

보통10점 중 4점

유형
슬라이딩 윈도우, 문자열, 투 포인터
정답자
아직 제출이 없습니다

문제

컴퓨터 과학자들은 같은 글자가 연속으로 나타나는 구간에 늘 관심을 갖는다. 그래서 문자열에서 같은 글자가 가장 길게 이어지는 구간을 찾는다.

소문자로만 이루어진 문자열 SS와 정수 mm이 주어진다. SS에서 최대 mm개의 글자를 지웠을 때, 같은 글자가 연속으로 나타나는 최대 개수를 구하라. mm개를 정확히 지울 필요는 없다.

입력

첫째 줄에 문자열 SS가 주어진다. SS는 소문자로만 이루어지며, 길이는 11 이상 2×1052 \times 10^5 이하이다.

둘째 줄에 정수 mm (0≤m≤∣S∣0 \le m \le |S|)이 주어진다. 지울 수 있는 글자의 최대 개수이다.

출력

문자열에서 최대 mm개의 글자를 지웠을 때 얻을 수 있는, 같은 글자가 연속으로 나타나는 최대 개수를 출력한다.

힌트

첫 번째 예제에서는 10번째와 11번째 글자를 지우면 된다.

두 번째 예제에서는 3, 4, 6, 10, 11번째 글자를 지우면 된다.

세 번째 예제에서는 a가 두 개 연속된 형태나 y가 두 개 연속된 형태를 만들 수 있으며, 길이는 각각 2이다.

예제3

  1. 예제 1

    입력
    bbazbcbbbcybbx
    2
    
    예상 출력
    5
    
  2. 예제 2

    입력
    bbazbcbbbcybbx
    5
    
    예상 출력
    8
    
  3. 예제 3

    입력
    zabcadyhxwuy
    5
    
    예상 출력
    2