/推荐看小甲鱼的数据结构与算法视频/ void move(int n, char a, char b, char c) { if(n==1) { printf("%c-->%c\n", a,c); } else { move(n-1, a, c, b);// printf("%c-->%c\n", ...
分类:
其他好文 时间:
2018-05-20 14:13:56
阅读次数:
127
# -*- coding: utf-8 -*- def move(n, a, b, c): if n==1: print(a,'==>',c)#只有一块的时候直接从A到C即可 else: move(n-1,a,c,b)#把n-1块从a先移到B print(a,'==>',c)#把第n块先从a先到c ... ...
分类:
编程语言 时间:
2018-05-20 11:43:50
阅读次数:
171
Problem Description: Input: 输入一个N,N<30 Input: Output: 对于每组数据,输出移动过程中所有会产生的系列总数 Output: Sample Input: 1 3 Sample Input: Sample Output: 3 27解题思路:这道题跟 杭电 ...
分类:
其他好文 时间:
2018-05-19 00:17:20
阅读次数:
184
题目描述 汉诺塔由三根柱子(分别用A、B、C表示)和n个大小互不相同的空心盘子组成。一开始n个盘子都摞在柱子A上,大的在下面,小的在上面,形成了一个塔状的锥形体。 对汉诺塔的一次合法的操作是指:从一根柱子的最上层拿一个盘子放到另一根柱子的最上层,同时要保证被移动的盘子一定放在比它更大的盘子上面(如果 ...
分类:
其他好文 时间:
2018-05-14 18:36:27
阅读次数:
151
最近学到一个关于汉诺塔问题的算法,然而发现对汉诺塔问题的了解还不够,故温故而知新。 汉诺塔问题:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘,大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另 ...
分类:
其他好文 时间:
2018-05-14 00:59:47
阅读次数:
252
1、TYVJ1266(这站是不是已经倒闭了啊) USACO陈年老题,对于这种开关问题啊,最多只按一次,而且第一行随便按完下面的就全确定了,类似的还有固定翻转一个长度的区间,这个也是最多翻一次的而且翻的次数为n-L 2、POJ1958 四塔的汉诺塔问题。但是好像是弱化的二维DP递推,马马虎虎吧 3、b ...
分类:
其他好文 时间:
2018-05-13 16:53:38
阅读次数:
152
2018年学习总结博客总目录: "第一周" "第二周" "第三周" "第四周" "第五周" "第六周" "第七周" "第八周" 教材学习内容总结 第11章 异常 1.一个异常是指一个定义非正常情况或错误的对象,由程序或运行时环境抛出,可以根据需要进行相应的捕获和处理。而错误类似于异常,但是错误代表不 ...
分类:
其他好文 时间:
2018-05-13 10:40:30
阅读次数:
274
昨天户外拓展的时候,教练安排了“汉诺塔”这个游戏,目的是考验大伙的智力和团队合作能力。 当汉诺塔的层数增加的时候,明显觉得排列组合的难度大了很多。其实,如果换一种思维去想这个问题,就会觉得其实不那么难。 可以把整个汉诺塔看成两个部分,最底端的套圈(A)和除去最底端的套圈之外的其他套圈(B)。 那目标 ...
分类:
其他好文 时间:
2018-05-12 15:09:21
阅读次数:
203
#include"iostream" using namespace std; void move(int n,char a,char b,char c){ if(n == 1){ cout<<n<<ends<<a<<" to "<<c<<endl; } else{ move(n - 1,a,c,b... ...
分类:
其他好文 时间:
2018-05-12 13:16:18
阅读次数:
157
汉诺塔问题,睡觉前突然看到一个有趣的游戏——汉诺塔问题。然后我就开始思考要怎样才能建立数学模型呢? 假设只有3个圆盘: 那么问题很好解决,我们将圆盘自上而下的编号1-3 ,将柱子编号A B C : 第一步,我们将1号圆盘放到C 上 , 第二步,我们将2号圆盘放到B 上, 第三步,将1号圆盘从C 放到 ...
分类:
其他好文 时间:
2018-05-04 16:59:36
阅读次数:
180