시간 제한메모리 제한제출정답맞힌 사람정답 비율
3 초 1024 MB30121040.000%

문제

En vanlig fuskkod i många gamla spel är den så kallade konamikoden, som består av sekvensen upp upp ned ned vänster höger vänster höger B A.

Du håller på att programmera ett spel, där du vill lägga in ett fusk som aktiveras när man skriver in konamikoden. Dock vill du göra det med en twist - det ska vara tillåtet att trycka på högst $K$ andra knappar mellan din konamikod.

Om $K = 3$ betyder detta att vi får sätta in tre extra knapptryckningar. Alltså skulle upp upp ned vänster ned vänster B B höger vänster höger B A vara en korrekt konamikod, där de tre extra knapptryckningarna är markerade i fetstil.

Du ska nu skriva ett program som, givet en sekvens av knapptryckningar, avgör det lägsta $K$-värde som behövs för att konamikoden ska förekomma i sekvensen. Notera att knapptryckningar som sker före den första konamikodstryckningen och efter den sista konamikodstryckningen inte räknas. Detta betyder att för sekvensen B B vänster upp upp ned vänster ned vänster B B höger vänster höger B A A B upp ska vi fortfarande svara $K = 3$.

입력

Indata innehåller en enda rad med $N$ tecken - sekvensen av knapptryckningar. Den kommer ges som en sekvens av bokstäverna U, N, V, H, B, A, som står för knapptryckningarna upp, ned, vänster, höger, B, A.

Det är garanterat att konamikoden finns som en delsekvens av knapptryckningarna.

출력

Du ska skriva ut en enda rad med heltalet $K$ som beskrivet i uppgiften.

서브태스크

번호배점제한
17

$N \le 11$.

211

$N \le 100$.

312

$N \le 3000$.

420

$N \le 200\,000$.

예제 입력 1

UUNNVHVHBA

예제 출력 1

0

예제 입력 2

UUNVNVBBHVHBA

예제 출력 2

3

예제 입력 3

UUNNVHBVHBA

예제 출력 3

1

출처

Olympiad > Swedish Olympiad in Informatics > 2016 > District Championships C번

  • 문제를 만든 사람: Johan Sannemo

채점 및 기타 정보

  • 예제는 채점하지 않는다.