직사각형 보드에 빨간 구슬과 파란 구슬을 하나씩 넣은 다음, 빨간 구슬을 구멍으로 빼내는 게임이 있다.
보드의 세로 크기는 N, 가로 크기는 M이고, 보드는 1×1 크기의 칸으로 나뉘어 있다. 가장 바깥 행과 열은 모두 막혀 있고, 보드에는 구멍이 하나 있다. 빨간 구슬과 파란 구슬은 1×1 칸을 가득 채우는 크기이고, 각각 하나씩 놓여 있다. 게임의 목표는 빨간 구슬을 구멍으로 빼내는 것이다. 이때 파란 구슬이 구멍에 들어가면 안 된다.
구슬을 손으로 건드릴 수는 없고, 중력을 이용해 이리저리 굴려야 한다. 왼쪽으로 기울이기, 오른쪽으로 기울이기, 위쪽으로 기울이기, 아래쪽으로 기울이기의 네 가지 동작이 가능하다.
각각의 동작에서 두 구슬은 동시에 움직인다. 빨간 구슬이 구멍에 빠지면 성공이지만, 파란 구슬이 구멍에 빠지면 실패다. 빨간 구슬과 파란 구슬이 동시에 구멍에 빠져도 실패다. 빨간 구슬과 파란 구슬은 같은 칸에 함께 있을 수 없고, 각각 한 칸을 모두 차지한다. 한 번 기울이면 구슬이 더 이상 움직이지 않을 때까지 굴러간다.
보드의 상태가 주어졌을 때, 최소 몇 번 만에 빨간 구슬을 구멍으로 빼낼 수 있는지 구하는 프로그램을 작성하시오.