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

蓝桥杯备考:递归初阶之汉诺塔问题

我们只要想一个主问题,我们是先把a上面n-1个盘子放在c里,然后再把第n个盘子放在b上,再利用a把c上n-1个盘子都放在b上就行了

#include <iostream>
using namespace std;


void dfs(int n,char x,char y,char z)
{
	if(n==0) return;
	dfs(n-1,x,z,y);
	printf("%c->%d->%c\n",x,n,z);
	dfs(n-1,y,x,z);
}


int main()
{
	
	int n;char a,b,c; cin >> n >> a >> b >> c;
	dfs(n,a,c,b);
	
	return 0;
}

 

相关文章:

  • 使用Docker部署SearXNG
  • 设计模式| 观察者模式 Observer Pattern详解
  • vue3 Props的使用
  • 1-19 .gitignore的作用
  • PAT 甲级 1091 Acute Stroke
  • 网络安全监测探针安装位置 网络安全监测系统
  • ZLMediaKi集群设置
  • Python部署工控安全风险评估系统
  • 字节火山引擎 DeepSeek 接入本地使用
  • mongodb的并发优化
  • 网络安全风险事件排名 网络安全事件划分
  • MobaXterm_Portable_v23.2 免费下载与使用教程(附安卓替代方案)
  • 模型思维 - 领域模型的应用与解析
  • 8.日常英语笔记
  • 【每日八股】MySQL篇(二):事务
  • 文档检索服务平台
  • 23贪心算法
  • 【蓝桥杯单片机】客观题
  • 如何在 macOS 上配置 MySQL 环境变量
  • 【ROS2】第三方库学习:Eigen(线性代数:矩阵、向量)