아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

연속 반복 문자열

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

요약
문자열 S와 k가 주어질 때, S 뒤에 k개의 문자를 붙여 만들 수 있는 문자열 중에서 같은 블록이 연속으로 두 번 나타나는 부분 문자열의 최대 길이를 구한다.
난이도

보통10점 중 7점

유형
문자열, 완전 탐색, 문자열 매칭, 구현
정답자
아직 제출이 없습니다

문제

연속 반복 문자열이란, 같은 문자열이 연속해서 등장하는 것을 의미한다. "abcabc"는 "abc"가 연속해서 등장했기 때문에, "dd"는 "d"가 연속해서 등장, "qwertyqwerty"는 "qwerty"가 연속해서 등장했기 때문에, 모두 연속 반복 문자열이다.

문자열 S가 주어졌을 때, 뒤에 k개의 글자를 더 추가해서 만들 수 있는 문자열의 부분 문자열 중에서 연속 반복 문자열이면서 길이가 가장 긴 것을 구해보자.

입력

첫째 줄에 문자열 S, 둘째 줄에 k(1 ≤ k ≤ 200)가 주어진다. 문자열은 알파벳 소문자로만 이루어져 있고, 길이는 200보다 작거나 같다.

출력

첫째 줄에 S의 뒤에 k개의 글자를 더 추가해서 만들 수 있는 문자열의 부분 문자열 중에서 연속 반복 문자열이면서 가장 긴 것의 길이를 출력한다.

예제3

  1. 예제 1

    입력
    aaba
    2
    
    예상 출력
    6
    
  2. 예제 2

    입력
    aaabbbb
    2
    
    예상 출력
    6
    
  3. 예제 3

    입력
    abracadabra
    10
    
    예상 출력
    20