색깔 돌
면접 대비시간 제한1초메모리 제한128 MB
남은 돌에서 각 색이 하나의 연속 구간을 이루도록 최소 개수의 돌을 제거한다.
문제
한 줄로 놓인 개의 돌이 있고, 각 돌은 가지 색 중 하나로 칠해져 있습니다. 같은 색의 돌 두 개 사이에 다른 색의 돌이 끼어 있지 않도록, 즉 남은 돌들을 왼쪽에서 오른쪽으로 읽었을 때 각 색의 돌이 모두 하나의 연속된 덩어리로 모이도록 돌을 제거하려고 합니다. 돌의 순서를 바꿀 수는 없고 오직 제거만 할 수 있을 때, 제거해야 하는 돌의 최소 개수를 구하세요.
입력
입력은 여러 개의 테스트 케이스로 이루어집니다. 각 테스트 케이스의 첫 줄에는 두 정수 과 가 주어집니다 (, ). 다음 줄에는 각 돌의 색을 나타내는 개의 정수 이 주어지며, 각 값은 집합 에 속합니다. 입력의 끝은 인 줄로 표시되며, 이 줄은 처리하지 않습니다.
출력
각 테스트 케이스마다, 조건을 만족시키기 위해 제거해야 하는 돌의 최소 개수를 한 줄에 출력합니다.
힌트
예를 들어 돌의 색이 순서대로 2 1 2 2 1 1 3 1 3 3인 경우, 2번째 돌과 7번째 돌을 제거하면 2 2 2 1 1 1 3 3이 되어 2가 세 개, 1이 세 개, 3이 두 개씩 각각 하나의 덩어리로 모입니다. 따라서 최소 제거 개수는 2입니다. 다른 최적해가 존재할 수도 있습니다.