문제
진이는 동생 생일에 진주로 만들어진 구슬 목걸이를 선물로 준비하였다.
목걸이는 중앙에 검은색 한 개의 구슬과 시계방향으로 빨간색, 파란색, 노란색이 섞여서 검은색을 제외한 N개로 구슬로 구성되어 있다.
진이 동생은 여러 가지 색깔이 섞여 있는 것을 좋아하지 않는다. 즉 같은 색끼리 모여 있어야만 만족할 수 있다.
다행스럽게도 가운데 있는 검정색 구슬은 마법의 구슬로 목걸이의 어떤 구슬이든 1회의 마법으로 한 개의 구슬 색깔을 다른 색으로 바꿀 수 있다.
하지만 마법을 많이 사용할수록 검은 구슬의 색깔이 차츰 회색으로 변하다가 급기야는 하얀색이 되고 만다. 따라서 가능한 마법을 적게 사용해서 최대한 검은색에 가깝도록 유지해야 한다.
각 색깔이 같은 색끼리 모이도록 하기 위해 최소의 마법을 사용하는 횟수를 출력하는 프로그램을 작성하시오.
입력
첫줄에 검은 구슬을 제외한 구슬의 개수 N( 1 <= N <= 106)이 주어진다.
둘째줄부터 N줄에 걸쳐 검은 구슬 다음부터 시계방향으로 구슬들의 색깔이 숫자 1,2,3으로 주어진다.
출력
첫줄에 마법을 사용해서 색깔을 바꿔야 하는 구슬의 수를 출력한다.
부분문제
| 번호 | 점수 | 조건 |
|---|---|---|
| #1 | 10점 | N ≤ 10 |
| #2 | 15점 | N ≤ 100 |
| #3 | 20점 | 구슬의 색 = 1 또는 2 |
| #4 | 55점 | 추가적인 제한이 없음. |
예제
5
3
1
2
3
3
1
힌트