어려운 하노이 탑
시간 제한2초메모리 제한512 MB
크기마다 M개씩 있는 원판을 같은 크기끼리 쌓을 수 있다는 변형 하노이 규칙 아래 최소 이동 횟수를 구한다.
문제
하노이 탑은 다음 규칙을 지키면서, 첫 번째 막대기에 꽂힌 원판들을 그 순서 그대로 세 번째 막대기로 옮기는 놀이다.
- 한 번에 개의 원판만 옮길 수 있다.
- 가장 위에 있는 원판만 이동할 수 있다.
- 원판 위에 자신보다 크기가 큰 원판을 올릴 수 없다. 반대로 말해서 크기가 작거나 같은 원판은 올릴 수 있다.
위 규칙에 따라 원판을 옮기려고 한다. 크기가 인 원판이 개 존재하고 각각 번부터 번까지 번호가 매겨져 있다. 는 정수
첫 번째 막대기에 원판이 크기 내림차순으로, 크기가 같다면 번호 내림차순으로 쌓여있을 때, 쌓인 순서 그대로 세 번째 막대기로 옮기기 위한 이동 횟수의 최솟값을 구하시오.

위 그림은 일 때의 모습이다.
입력
첫 번째 줄에 , 이 공백으로 구분되어 주어진다.
출력
이동 횟수의 최솟값을 로 나눈 나머지를 출력한다.