vijos 4-Hanoi-Tower

这篇博客探讨了经典的汉诺塔游戏的变体,即拥有4根柱子而不是3根的情况。作者提出了一个解决至少需要移动多少次盘子才能从第1根柱子移动所有盘子到第4根柱子的问题,并提供了样例输入和输出。解决方案包括分两步进行,首先将一部分盘子通过另外两根柱子移到目标柱子,然后移动剩余的盘子。博客中还包含了一段用于计算移动次数的代码示例。
摘要由CSDN通过智能技术生成

描述

“汉诺塔”,是一个众所周知的古老游戏。现在我们把问题稍微改变一下:如果一共有4根柱子, 而不是3根,那么至少需要移动盘子多少次,才能把所有的盘子从第1根柱子移动到第4根柱子上呢?
为了编程方便,您只需要输出这个结果mod 10000的值。
格式

输入格式

一个正整数n。(<=50000)
输出格式

一个正整数,表示把n个盘子从第1根柱子移动到第4根柱子需要的最少移动次数mod 10000的值。
样例1

样例输入1

2
样例输出1

3
限制

来源

huyichen

分析:
经典hanoi塔问题上加了一个柱子,可以先打一个程序然后找规律.打表程序思路:
第一步:先将x个通过a,b,d移到c柱
第二步,将剩下的(n-x)通过a,b移至d柱
第三步,将c放在d上

打表Code

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#include<cstdlib
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值