이 문제는 잘 알려진 하노이 탑 문제의 변형이다.
하노이 탑 문제는 다음과 같다. 세 개의 막대기, 즉 막대기-1, 막대기-2, 막대기-3 이 있고, 막대기1 에 크기가 다른 n 개의 디스크가 내림차순으로 쌓여 있다. 즉, 가장 작은 디스크가 가장 위에, 가장 큰 디스크가 가장 아래에 놓여 있다. 문제의 목표는 막대기-1 에 쌓여 있는 모든 디스크를 막대기-3 으로 옮기는 것이다. 단, 옮기는 과정에서, 한 번에 하나의 디스크만 옮길 수 있으며, 어떤 경우에도 큰 디스크가 작은 디스크 위에 놓여서는 안 된다.
원래의 하노이 탑 문제가 아래와 같이 변형된다.
R), 녹색(G) 또는 파란색(B)의 세 가지 색상 중 하나로 칠해져 있다. 하지만, 동일한 크기의 디스크는 동일한 색상을 가진다.그림 C.1 은 디스크를 모두 옮긴 후, 크기가 같은 디스크의 색상에 따른 상대적 순서의 조건을 만족시키는 예를 보여준다.

그림 C.1
입력은 표준입력을 사용한다. 첫 번째 줄에는 정수 m (1≤m≤25)이 주어진다. 여기서, m은 가장 큰 디스크의 지름을 나타낸다. 이어지는 m 줄에서, i (1≤i≤m) 번째 줄에는 하나의 영어 대문자와 정수 k (≥1)가 주어지는데, 이는 지름의 크기가 i 인 디스크에 관한 정보를 나타낸다. 즉, 영어 대문자는 디스크의 색을, 정수 k는 동일한 크기의 디스크 개수를 나타낸다. 문자 ‘R’은 빨간색, ‘G’는 녹색, ‘B’는 파란색을 각각 의미한다. 1부터 m까지의 디스크 지름 각각에 대해서, 그 지름을 가진 디스크가 적어도 하나 이상 존재한다.
참고로, 쌓여 있는 디스크의 총 개수는 50 을 넘지 않는다.
출력은 표준출력을 사용한다. 결과를 한 줄에 출력하되, 디스크의 색에 따른 상대적인 순서의 조건을 만족시키면서 막대기-1 에 쌓여 있는 모든 디스크를 막대기-3 으로 이동하기 위한 최소 이동 횟수를 출력한다.