벚꽃과 단풍

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

요약
문자열에서 모든 D가 모든 B보다 오른쪽에 오도록 동전을 최소 횟수로 뒤집는다.
난이도

보통10점 중 4점

유형
문자열, 그리디
정답자
아직 제출이 없습니다

문제

성준이는 ALOHA의 대표적인 두 대회인 벚꽃컵과 단풍컵을 상징하는 동전을 NN개 가지고 있다. 이 동전의 한쪽 면에는 벚꽃 그림, 반대쪽 면에는 단풍 그림이 그려져 있다.

성준이는 왼쪽에서 오른쪽으로 동전 NN개를 일렬로 내려놓았다. 왼쪽에서부터 ii번째에 놓여 있는 동전이 ii번째 동전이다.

성준이는 단풍이 벚꽃보다 먼저 오는 것에 불만을 가졌다. 따라서 성준이는 원하는 동전을 하나 골라 윗면과 아랫면을 뒤집는 작업을 수행해서, 모든 단풍 그림이 벚꽃 그림보다 오른쪽에 가도록 하려고 한다.

엄밀히 말하면, (1≤i,j≤N;i≠j)(1 \leq i, j \leq N; i \neq j)를 만족하는 모든 순서쌍 (i,j)(i,j)에 대해, ii번째 동전의 윗면이 벚꽃이고 jj번째 동전의 윗면이 단풍이라면 항상 i<ji < j를 만족해야 한다.

성준이를 위해 동전을 최소 몇 번 뒤집어야 원하는 대로 동전을 배열할 수 있을지 구해보자.

입력

첫째 줄에 동전의 개수 NN이 주어진다. (1≤N≤100,000)(1\leq N\leq 100\\,000)

둘째 줄에 B와 D만으로 이루어진 길이가 NN인 문자열 SS가 주어진다.

모든 1≤i≤N1\leq i\leq N에 대해, SS의 ii번째 문자는 ii번째 동전이 벚꽃 그림이 위에 보이도록 놓여 있으면 B이고, 단풍 그림이 보이도록 놓여 있으면 D이다.

출력

성준이가 원하는 상태를 만들기 위해 동전을 뒤집어야 하는 최소 횟수를 출력한다.

예제1

  1. 예제 1

    입력
    7
    BDBBDBD
    
    예상 출력
    2