首页 > 其他分享 >贝拿勒斯圣庙的宝石针

贝拿勒斯圣庙的宝石针

时间:2023-04-06 20:45:13浏览次数:32  
标签:char 移到 宝石 int hannuota 圣庙 贝拿勒斯 金片

题目描述

法国数学家爱德华 · 卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的 n 片金片。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。而我们现在想知道,移动这 n 片金片,需要多少步。给这三个宝石针分别标号为 A B C , 初始状态下所有的金片都在 A 上,目的是将 A 上的所有金片移动到 C 上。编程设计算法,输出每一步的搬运过程。

 

输入格式

包含一个整数,表示金片的个数。

 

输出格式

输出多行,每行表示搬运一个金片的详细过程。

例如: 1 A C 。 表示将编号为 1 的金片直接从 A 移到 C(编号从1开始)

 

代码

#include <iostream>

using namespace std;

void hannuota(int n,char A,char B,char C)

{  if(n==1) 

{   

   cout<<n<<" "<<A<<" "<<C<<endl; 

   if(n!=1) 

{     

   hannuota(n-1,A,C,B);     

   cout<<n<<" "<<A<<" "<<C<<endl;   

   hannuota(n-1,B,A,C); 

}

}

   int main( )

   int n; 

   char A,B,C; 

   cin>>n; 

   hannuota(n,'A','B','C'); 

   return 0;

}

//汉诺塔

1.将A上 n-1 个金片移到B上

2.再将A上最后一个金片移到C上

3.最后将B上的金片移到C上

4.因为一次只能一个金片,所以要重复将 n-1 个金片移到C上

标签:char,移到,宝石,int,hannuota,圣庙,贝拿勒斯,金片
From: https://www.cnblogs.com/BOKE2/p/17282662.html

相关文章

  • 与ChatGPT玩文字冒险游戏[寻五宝石]
    注:文中的图片来自另一个AI生成图片的程序。我:请重新开始一个文字冒险游戏。由你来描述游戏场景(盗墓情节),由我来决定采取的动作。请详细描述场景中所有的物品、生物。如果......
  • 与百度文心玩文字冒险游戏[寻五宝石]
    百度文心测试我:请开始一个文字冒险游戏。由你来描述游戏场景(盗墓情节),由我来决定采取的动作。请详细描述场景中所有的物品、生物。如果场景中的人物在对话或者跟主角对话,请......
  • 泰姬陵坐落于印度古都阿格,是十七世纪莫卧儿帝国皇帝沙杰罕为纪念其爱妃所建,她宏伟壮观
    泰姬陵坐落于印度古都阿格,是十七世纪莫卧儿帝国皇帝沙杰罕为纪念其爱妃所建,她宏伟壮观,纯白大理石砌建而成的主体建筑叫人心醉神迷,成为世界七大奇迹之一。陵寝以宝石镶饰,图......
  • 【Android开发】范例4-猜猜宝石放在哪个箱子里
    实现"猜猜宝石放在哪个箱子"的小游戏:主界面中有三个箱子,单击其中任意一个箱子,将打开箱子,显示里面是否有宝石,并且将没有被单击的箱子设为半透明显示,被......
  • 3600、宝石与石头
    给你一个字符串jewels代表石头中宝石的类型,另有一个字符串stones代表你拥有的石头。stones中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝......
  • P7518 [省选联考 2021 A/B 卷] 宝石
    非常有意义的一道题,虽然不算太难。非常好题目,英雄联盟,爱来自瓷器。戳我看题题意给一定一个\(n\)个点的树,每个点有一个颜色,点\(u\)的颜色为\(w_u\)。给定一个\(P_......
  • P2343 宝石管理系统 做题记录
    随机跳的。一眼带修第\(\text{k}\)大,平衡树/权值线段树/set随便搞就行。(set可能要双\(\log\),所以没写)很快啊,权值线段树就\(\text{A}\)了。直接跑到最优解第......
  • 【计算机视觉(CV)】基于全连接网络实现宝石分类
    【计算机视觉(CV)】基于全连接网络实现宝石分类作者简介:在校大学生一枚,华为云享专家,阿里云专家博主,腾云先锋(TDP)成员,云曦智划项目总负责人,全国高等学校计算机教学与产业实践资......
  • 收集宝石
    收集宝石(gem)【题目描述】        小R来到了一个神秘的房间,这个房间的地面上散落着n颗宝石,第i颗宝石的位置为(xi,yi),价值为wi。小R想要收集这些宝石,每颗宝石有一......
  • 【计算机视觉(CV)】基于高层API实现宝石分类
    【计算机视觉(CV)】基于高层API实现宝石分类作者简介:在校大学生一枚,华为云享专家,阿里云专家博主,腾云先锋(TDP)成员,云曦智划项目总负责人,全国高等学校计算机教学与产业实践资......