当前位置: 首页 > news >正文

东方博宜OJ 2419:汉诺塔(3) ← 递归

【题目来源】
https://oj.czos.cn/p/2419

【题目描述】
汉诺塔的问题大家都已经很熟悉了,有三个柱子,第 1 个 A 柱子上有一些大小不一的 n 个金片,初始状态下保证金片从上到下按照从小到大的顺序叠放,并按照 1~n 的顺序编号。
要把金片从 A 柱移动到 C 柱,可以借助 B 柱,移动过程中不能出现大金片在小金片上面的情况。
现增加一条规则:移动过程中,只允许将金片移到相邻的柱子,也就是可以从 A 柱移动金片到 B 柱,但不能从 A 直接移动金片到 C 柱;也就是说,每次移动一定会移动到 B 柱,或者从 B 柱移出。
请问:如果有 n 个金片需要从 A 柱移动到 C 柱,需要移动多少步。

【输入格式】
输入一个整数 n,代表金片的数量。(n≤10)

【输出格式】
输出一个整数,代表移动的步数。

【输入样例】
3

【输出样例】
26

【数据范围】
n≤10

【算法分析】
● 带有相邻移动限制的汉诺塔问题,移动次数为 3^n-1。
● 带有相邻移动限制的汉诺塔问题的代码
详见:https://blog.csdn.net/hnjzsyjyj/article/details/156211550

#include <bits/stdc++.h>
using namespace std;void hnt(int n, char st, char to, char aux) {if(n==0) return;if(n==1) {if((st=='A' && to=='B') || (st=='B' && to=='A') ||(st=='B' && to=='C') || (st=='C' && to=='B')) {cout<<st<<" To "<<to<<endl;} else {cout<<st<<" To "<<aux<<endl;cout<<aux<<" To "<<to<<endl;}return;}if((st=='A' && to=='C') || (st=='C' && to=='A')) { //n>1hnt(n-1,st,to,aux); //A->Ccout<<st<<" To "<<aux<<endl; //A->Bhnt(n-1,to,st,aux); //C->Acout<<aux<<" To "<<to<<endl; //B->Chnt(n-1,st,to,aux); //A->C} else {hnt(n-1,st,aux,to);cout<<st<<" To "<<to<<endl;hnt(n-1,aux,to,st);}
}int main() {int n;cin>>n;hnt(n,'A','C','B');return 0;
}/*
in:
2out:
A To B
B To C
A To B
C To B
B To A
B To C
A To B
B To C
*/

【算法代码】

#include <bits/stdc++.h>
using namespace std;int main() {int n;cin>>n;cout<<pow(3,n)-1;return 0;
}/*
in:3
out:26
*/





【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/156211550
https://blog.csdn.net/hnjzsyjyj/article/details/156206151
https://blog.csdn.net/hnjzsyjyj/article/details/156206554
https://blog.csdn.net/hnjzsyjyj/article/details/156201255
https://blog.csdn.net/hnjzsyjyj/article/details/156192874
https://blog.csdn.net/hnjzsyjyj/article/details/156204715
https://blog.csdn.net/hnjzsyjyj/article/details/156185382
https://blog.csdn.net/hnjzsyjyj/article/details/156182882

http://www.jsqmd.com/news/134390/

相关文章:

  • 奶茶店、售楼处、快闪店必看!2025全自动咖啡机推荐,稳定出杯还易维护 - 品牌2026
  • 奶茶店、售楼处、快闪店必看!2025全自动咖啡机推荐,稳定出杯还易维护 - 品牌2026
  • 2025年企业AI智能体官网源头厂家推荐:实力厂商与服务商厂家排行榜 - 工业推荐榜
  • GPU服务器的FP32和FP64性能区别在哪?
  • 超详细 Cherry Studio 自定义模型接入指南,轻松解锁高效 AI 协作 - poloai
  • 2025广东汕尾腻子粉/抗裂砂浆/防水涂料厂家深度盘点:决策支持型分析与终极采购指南 - 2025年品牌推荐榜
  • 2025年开源数据工程工具全景图:从存储到AI的完整技术栈
  • 2025-2026北京东城区侵权损害律所口碑排名白皮书 - 苏木2025
  • 2025超声波提取仪厂家TOP5推荐:生物制药行业超声波提取仪器厂家权威测评 - mypinpai
  • Cogito v2 70B大模型:开启AI深度思考新纪元
  • Open-AutoGLM电脑版不见了?官方未公开的3个技术缺陷终于曝光
  • 2025PEEK零件解决方案提供商TOP5权威推荐:甄选优质peek零件服务厂家 - myqiye
  • flag、方法
  • 效果-Plexus粒子
  • 墨西哥股票数据 API 对接实战指南(含实时行情与 IPO 功能)
  • 效果-Plexus粒子
  • 2025年合肥写真摄影行业口碑排名:合肥山橘月摄影好不好? - myqiye
  • 2025全自动咖啡机哪家更合适更适合我 哪家比较靠谱比较好 选择指南 - 品牌2026
  • IT相关知识学习计划表
  • git reset and git clean, git checkout
  • 2025年专业全面市场调研服务排行榜,渠道市场调研公司推荐及新测评 - 工业推荐榜
  • THK授权代理商:THK现货厂家提供的专业技术支持 - 品牌推荐大师1
  • 2025纳新部分错题复盘
  • Open-AutoGLM群控部署难题全解(从零搭建到高可用集群)
  • 2025浙江广告界权威口碑榜,这些大型公司实力上榜,广告公司找哪家深度剖析助力明智之选 - 品牌推荐师
  • 揭秘cogagent与AutoGLM融合黑科技:实现真正自主任务执行
  • 新手必看:区块链应用开发的核心技术栈与工具清单
  • 2025年知名的端吸离心泵行业内知名厂家排行榜 - 品牌宣传支持者
  • 抖音福袋扭蛋机 v5.2.0
  • 【短视频效率提升300%】:Open-AutoGLM自动化生成实战全解析