/ Vijos / 题库 /

新汉诺塔

新汉诺塔

时间限制:1秒  内存限制:256M


【题目描述】

  古老的汉诺塔问题是:用最少的步数将 \(N\) 个半径互不相等的圆盘从 A 柱利用 B 柱全部移动到 C 柱,在移动过程中小盘始终在大盘的上面。现在再附加一个条件:任何时候都不允许直接把盘子从 A 柱移动到 C 柱,也不允许直接把盘子从 C 柱移动到 A 柱。

  比如当 \(N=2\) 时,最少需要 8 步移动,过程如下(A柱上的两个盘子从上到下编号为1,2):
  ●第1步:把1号盘 A 柱移到 B 柱子
  ●第2步:把1号盘 B 柱移到 C 柱子
  ●第3步:把2号盘 A 柱移到 B 柱子
  ●第4步:把1号盘 C 柱移到 B 柱子
  ●第5步:把1号盘 B 柱移到 A 柱子
  ●第6步:把2号盘 B 柱移到 C 柱子
  ●第7步:把1号盘 A 柱移到 B 柱子
  ●第8步:把1号盘 B 柱移到 C 柱子

【输入格式】

  一个整数 \(N\)。  

【输出格式】

  输出最少移动步数 \(mod\ 10^9+3\)。

【输入输出样例】

 Input

4

 Output

80

【数据限制】

  对于 \(100\%\) 的数据满足,\(1≤N≤10^{10}\)。

【来源】

  Mr.he

信息

ID
3022
难度
9
分类
动态规划 | 递推 | 组合数学 | 其他 | 快速幂 点击显示
标签
(无)
递交数
1
已通过
1
通过率
100%
被复制
1
上传者