PTA汉诺(Hanoi)塔问题
PTA汉诺(Hanoi)塔问题
古代某寺庙中有一个梵塔,塔内有3个座A、B和C,座A上放着64个大小不等的盘,其中大盘在下,小盘在上。有一个和尚想把这64 个盘从座A搬到座B,但一次只能搬一个盘,搬动的盘只允许放在其他两个座上,且大盘不能压在小盘上。现要求用程序模拟该过程,输入一个正整数n,代表盘子的个数,编写函数
void hanoi(int n,char a,char b,char c)
其中,n为盘子个数,从a座到b座,c座作为中间过渡,该函数的功能是输出搬盘子的路径。
输入格式:
输入在一行中给出1个正整数n。
输入样例:
3
输出样例:
a-->b
a-->c
b-->c
a-->b
c-->a
c-->b
a-->b
我的代码:
#include<stdio.h>
#include<stdlib.h>void hanoi(int n, char a, char b, char c);int main()
{int n = 0;scanf("%d", &n);hanoi(n,'a','b','c');return 0;
}
void hanoi(int n, char a , char b, char c)
{ if(n == 1){printf("%c-->%c\n", a, b);}else{hanoi(n-1, a, c, b);printf("%c-->%c\n", a, b);hanoi(n-1, c, b, a);}
}
PTA汉诺(Hanoi)塔问题相关推荐
- PTA 汉诺塔的非递归实现
PTA 汉诺塔的非递归实现 7-11 汉诺塔的非递归实现 (25分) 借助堆栈以非递归(循环)方式求解汉诺塔的问题(n, a, b, c),即将N个盘子从起始柱(标记为"a")通过 ...
- 汉诺塔+汉诺四塔(C/C++)
目录 汉诺塔 1 简介 2 代码思路 2.1 对于次数的理解 2.2 对于移动的理解 3 代码 4 加深理解 汉诺四塔 1 思路 2 代码 汉诺塔 1 简介 汉诺塔(Tower of ...
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-933 汉诺四塔
第十四届蓝桥杯集训--练习解题阶段(无序阶段)-ALGO-933 汉诺四塔 目录 第十四届蓝桥杯集训--练习解题阶段(无序阶段)-ALGO-933 汉诺四塔 前言 关于数学的疑问 算法训练 汉诺四塔 ...
- hanoi塔递归算法c语言,递归算法 Hanoi(汉诺)塔问题
Hanoi(汉诺)塔问题.这是一个古典的数学问题,是一个用递归方法解题的典型例子.问题是这样的:古代有一个梵塔,塔内有3 个座A.B.C,开始时A座上有64个盘子,盘子大小不等,大的在下,小的在上.有 ...
- 汉诺4塔 (递归算法)
题目描述 "汉诺塔",是一个众所周知的古老游戏.现在我们把问题稍微改变一下:如果一共有4根柱子, 而不是3根,那么至少需要移动盘子多少次,才能把所有的盘子从第1根柱子移动到第4根柱 ...
- C++实验五:人口普查统计+汉诺塔问题
实验目的: 进一步巩固函数的嵌套定义和调用的掌握 掌握函数的递归调用 题目一: 如果P是一年中第一天的人口数量,B是出生率,D是死亡率,年底的人口普查统计值通过下列公式给出: 人口增长率通过下列公式给 ...
- 三柱汉诺塔四柱汉诺塔
汉诺塔问题_哔哩哔哩_bilibili 三柱汉诺塔,从整体来看,分为三部 1.先让n-1个盘先由a柱放在b柱 2.把第n个盘由a柱放在c柱 3.将这n-1个盘由b柱移动到c柱 而其中的递归过程就是直到 ...
- Ka的递归编程练习 Part4|Hanoi汉诺塔,双色汉诺塔的也有
1 #include <stdio.h> 2 void hanoi(int s,char a,char b,char c) //a是出发盘,b是中途盘,c是结束盘 3 { 4 if(s== ...
- c语言递归求塔移动次数,【C语言】Hanoi(汉诺)塔问题,求移动盘子的步骤(递归法)...
所有的循环算法都可以用递归实现,反之不成立,这足以证明递归的重要性! Hanoi(汉诺)塔问题.古代有一个焚塔,塔内有3个座A,B,C,开始时A座上有64个盘子,盘子大小不等,大的在上,小的在下,有一 ...
最新文章
- 操作系统学习:系统调用与Linux0.12初始化详细流程
- Python的进度条的制作
- Android输入输出机制之来龙去脉
- python programming training(四):动态规划
- uni-app-页面结构
- 克制linux启动盘,制作Linux启动盘的四种方法
- python编程小知识_分享Python开发中要注意的十个小贴士
- html解析のBeautifulSoup
- 全局路径规划:图搜索算法介绍2(A star)
- 汇编语言比C51需要效率高,汇编语言与C51语言实现跑马灯实验的比较 -
- win php mssql php.ini
- 3月2日 雾霾图像清晰化处理,第1人称相机世界的坐标系,焦距、焦点、调焦、超焦距、视场角、滑动变焦Dolly zooming,相机内参
- 怎样成为一名优秀的运维工程师
- mysql varbinary 转换_mysql binary和varbinary存储字段转换大小写
- oki5530sc打印错误_我用的是四通oki 5530sc针式打印机,打印时提示正在打印,但就是不打印...
- 计算几何 - 你绝对找不到比这更好的计算几何
- wps如何在html中在线浏览器,wps如何设置表格内链接用电脑默认浏览器打开
- QT实现简单的上位机软件
- 仿微信的录制小视频功能
- VMware创建共享文件夹并实现文件传输(Windows主机,Ubuntu虚拟机)