KSA 문자열

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

요약
X를 같은 길이의 KSA 반복 문자열로 바꾸는 최소 삽입/삭제 횟수를 구한다.
난이도

보통10점 중 4점

유형
동적 계획법, 문자열
정답자
아직 제출이 없습니다

문제

KSAAC 운영진은 모두 KSA를 사랑하기 때문에 다음과 같은 조건을 만족하는 문자열을 좋아한다.

문자열의 길이를 NN이라고 할 때, 1≤i≤N1\leq i\leq N인 모든 ii에 대하여

  • ii를 33으로 나눈 나머지가 11이면 ii번째 문자는 K이다.
  • ii를 33으로 나눈 나머지가 22이면 ii번째 문자는 S이다.
  • ii를 33으로 나눈 나머지가 00이면 ii번째 문자는 A이다.

문자열에는 다음과 같은 시행을 00회 이상 수행할 수 있다.

  • 존재하는 아무 문자를 한 개 제거한다.
  • 맨 앞에 아무 문자를 한 개 추가한다.
  • 맨 뒤에 아무 문자를 한 개 추가한다.

주어진 문자열 XX에 적절한 시행을 하여 XX를 XX와 길이가 같으면서 KSAAC 운영진이 좋아하는 문자열로 바꾸려고 한다. 이때 필요한 시행의 최소 횟수를 구하여라.

입력

첫 번째 줄에 문자열 XX가 주어진다.

출력

문자열 XX를 XX와 길이가 같으면서 KSAAC 운영진이 좋아하는 문자열로 바꾸기 위한 최소 시행 횟수를 출력한다.

제한

  • 1≤∣X∣≤5×1051\le |X|\le 5\times 10^5
  • X\_i \in \\{K,,S,,A\\}

예제1

  1. 예제 1

    입력
    KKSKASKA
    
    예상 출력
    8