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

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

변기 시트 규칙

면접 대비

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

요약
초기 시트 위치와 순서대로 주어지는 각 사용자의 선호에 대해 세 가지 정책별 시트 조정 횟수를 구합니다.
난이도

쉬움10점 중 2점

유형
시뮬레이션
정답자
아직 제출이 없습니다

문제

사무실에서 생기는 사소한 다툼 중 하나가 변기 시트를 올려 둘지 내려 둘지의 문제다. 직원이 시트를 자기에게 맞게 고치는 시간이 한 주에 몇 시간씩 쌓이므로, 큰 회사에서는 이 문제가 업무 시간에도 영향을 준다. 화장실 규칙에 따라 시트 조정이 몇 번 일어나는지 계산하자.

보통은 남성이 시트를 올린 상태로, 여성이 내린 상태로 변기를 쓴다고 본다. 여기서는 성별과 상관없이 올린 상태를 선호하는 사람과 내린 상태를 선호하는 사람으로만 나눈다.

규칙은 여러 가지를 생각할 수 있다. 그중 세 가지를 보자.

  1. 나갈 때 항상 시트를 올려 둔다.
  2. 나갈 때 항상 시트를 내려 둔다.
  3. 나갈 때 자기가 들어왔을 때 보고 싶은 상태, 즉 자기가 선호하는 상태로 둔다.

그래서 사람은 변기를 쓰기 전에 시트를 자기 선호에 맞게 조정해야 할 수 있고, 규칙에 따라 나가기 전에 한 번 더 조정해야 할 수 있다. 조정 한 번은 시트를 올리거나 내리는 동작 한 번이다.

사람들의 선호가 순서대로 주어질 때, 세 규칙 각각에서 조정이 모두 몇 번 일어나는지 구하라.

입력

첫째 줄에 문자 'U'와 'D'로만 이루어진 문자열이 주어진다. 길이는 2 이상 1000 이하이다.

문자열의 길이를 nn이라 하자. 첫 번째 문자는 변기 시트의 처음 상태이고, 'U'는 올라간 상태, 'D'는 내려간 상태를 뜻한다. 이어지는 n−1n-1개 문자는 화장실을 차례로 쓰는 n−1n-1명이 각각 어느 상태를 선호하는지 나타낸다.

출력

세 줄에 각각 한 수를 출력한다. 첫째 줄은 규칙 1, 둘째 줄은 규칙 2, 셋째 줄은 규칙 3에서 일어나는 조정 횟수의 총합이다.

예제5

  1. 예제 1

    입력
    UUUDDUDU
    
    예상 출력
    6
    7
    4
    
  2. 예제 2

    입력
    UU
    
    예상 출력
    0
    1
    0
    
  3. 예제 3

    입력
    DD
    
    예상 출력
    1
    0
    0
    
  4. 예제 4

    입력
    UD
    
    예상 출력
    2
    1
    1
    
  5. 예제 5

    입력
    DU
    
    예상 출력
    1
    2
    1