도트 매트릭스 프린터

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

문제

종수는 아두이노 프로젝트에 쓸 도트 매트릭스 프린터를 샀다. 오랜 구현 끝에 아두이노에서 프린터로 세 가지 명령을 보낼 수 있게 되었다.

  • SET(X): 프린터의 주 메모리에 문자 X를 저장한다.
  • NEXT(X): 프린터의 보조 메모리에 문자 X를 저장한다.
  • WRITE: 주 메모리에 저장된 문자를 인쇄한다. 단, 바로 직전에 실행한 명령이 NEXT라면 보조 메모리에 저장된 문자를 인쇄한다.

예를 들어 AABAA를 출력할 때는 다음 8개의 명령을 사용할 수 있다.

SET(A), WRITE, WRITE, SET(B), WRITE, SET(A), WRITE, WRITE

NEXT를 이용하면 다음 7개의 명령으로도 출력할 수 있다.

SET(A), WRITE, WRITE, NEXT(B), WRITE, WRITE, WRITE

알파벳 대문자로만 이루어진 단어가 주어질 때, 그 단어를 출력하는 데 필요한 명령 수의 최솟값을 구하라.

첫 번째 명령은 반드시 SET이어야 한다.

입력

첫째 줄에 인쇄해야 하는 단어가 주어진다. 단어는 알파벳 대문자로만 이루어져 있으며, 길이는 10,000을 넘지 않는다.

출력

입력으로 주어진 단어를 출력하는 데 필요한 명령 수의 최솟값을 출력한다.