한 복권 회사가 글자 게임이라는 숫자 게임을 운영한다. 게임 응모용지에는 n개의 칸이 있고, 각 칸에는 A, B, C 세 글자 중 정확히 하나를 적어 넣는다. 아래 그림은 n=10일 때 응모용지를 채운 한 가지 예이다.

당첨 문자열은 추첨 기계로 뽑는다. 기계 안에는 3n개의 공이 들어 있는데, A가 적힌 공이 n개, B가 적힌 공이 n개, C가 적힌 공이 n개이다. 기계 윗면에는 n개의 구멍이 한 줄로 뚫려 있고, 추첨이 시작되면 각 구멍마다 공이 정확히 하나씩 빨려 올라간다. 뽑힌 공의 글자를 왼쪽에서 오른쪽 순서로 읽으면 길이 n인 문자열이 되며, 이것이 추첨 결과이다. 이 문자열과 똑같이 적은 응모용지는 1등에 당첨된다. 아래 그림은 위 응모용지가 당첨되는 추첨 결과를 나타낸 것이다.

그런데 이 추첨은 완전히 공정하지는 않다. 같은 종류(같은 글자)의 공끼리는 서로 밀어내어 이웃한 두 구멍에 함께 놓이는 일이 절대 없다. 따라서 위 그림과 같은 배치는 사실 불가능하며, 실제로 가능한 모든 추첨 결과에서는 이웃한 두 글자가 서로 같은 경우가 절대 없다.
당신은 이미 응모용지에 길이 n인 문자열을 적어 두었다. 이제 이웃한 두 글자가 서로 같지 않도록 이 문자열을 고치려고 하는데, 바꾸는 칸의 수를 최대한 적게 하고 싶다. 바꾸는 각 칸에는 A, B, C 중 어느 글자든 넣을 수 있다. 바꾸어야 하는 글자의 최소 개수를 구하여라.
첫째 줄에 정수 n (2≤n≤500000)이 주어진다. 둘째 줄에 A, B, C로만 이루어진 길이 n인 문자열이 주어진다. 이 문자열에는 서로 같은 글자가 이웃한 쌍이 적어도 하나 존재한다.
이웃한 두 글자가 서로 같지 않게 만들기 위해 바꾸어야 하는 글자의 최소 개수를 나타내는 양의 정수 하나를 출력한다.