随笔分类 - 递归
摘要:【问题背景】 A柱子上有a个从上到下半径依次递减的圆盘。 A是初始柱子 B是空柱子 C也是空柱子 你要求把A上的a个圆盘都放到C柱子上去 并且C柱子上最后的圆盘的次序也同初始的A柱子一样 在移动盘子的过程中,不能将大盘子放在小盘子上面 一次只能移动一个圆盘 【详解】 这个问题可以分为三个步骤: 1.
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 【题解】 递归一会。 会发现最后肯定是0,1一直循环。 开始循环之后就直接返回结果就好。 【代码】
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 把序列生成的过程看成一颗树 会发现最后形成的是一颗二叉树。 每个二叉树上的节点就对应了序列中的一个数字。 如果我们把每个节点都往下投影的话。 (而且整棵树都是左右对称的。那么每个子树的根节点就是(l+r)/2了 就像是整个序列了
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 规律+递归题 f[k][i] k时刻前i行的红气球个数 i2^(k 1) f[k][i] = 2 c[k 1] + f[k 1][i 2^(k 1)]; c[k]表示k时刻红气球个数 显然k时刻有3^k个红气球 【代码】 cpp
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 递归题 【代码】 cpp include using namespace std; const int N = 300; string s1, s2; int n, idx; int g[N][2]; int dfs(int l
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 模拟+递归 【代码】 cpp include using namespace std; const int N = 200; string s[N+10]; int n; bool is(char key){ if (key!=
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 递归模拟就好。 【代码】
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 后序遍历的最后一个是根节点。 然后在中序遍历中找到这个节点。 分为左右两段. 然后递归上述操作就好。 题目描述好坑啊。 原来是叶子节点的权值的最小值。。 (叶子节点到根节点的权值和最小的对应的叶子节点的最小权值,,,) 【代码】
阅读全文
摘要:Time Limit: 3 secondMemory Limit: 2 MB【问题描述】 形如2p-1的素数称为麦森数,这时P一定也是个素数。但反过来不一定,即如果P是个素数,2p-1不一定也是素数。到1998年底,人们已找到了37个麦森数。最大的一个是P=3 021 377,它有909 52...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述用递归方法求两个正整数m和n的最大公约数。(m>0,n>0) Input两个数,即m和n的值。 Output最大公约数 Sample Input8 6Sample Outputgcd=2 【题解】用辗转相除法来做就...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述用递归算法,把任一给定的十进制正整数转换成八进制数输出。 Input一个正整数,表示需要转换的十进制数。 Output一个正整数,表示转换后的八进制数 Sample Input15Sample Output17【题...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述用递归算法写程序,输入一个非负整数,输出这个数的倒序数。 Input一个非负整数。 Output倒序结果(前面有零不剔除) Sample Input1230Sample Output0321 【题解】用一个递归程序...
阅读全文
摘要:Time Limit: 2secondMemory Limit: 2 MB有n堆纸牌,编号分别为1,2....n。每堆上有若干张,但纸牌总数必为n的倍数。可以在任一堆上取若干张纸牌,然后移动。移动规则为:在编号为1堆上取的纸牌,只能移到编号为2的堆上;在编号为n堆上取的纸牌,只能移到编号为n-1的堆...
阅读全文
摘要:Time Limit: 1 secondMemory Limit: 2 MB问题描述有一个有趣的现象,有些数字(例如:2333)是个质数,将末尾的数去掉后发现它仍然是质数,依此类推,一直到第一位仍是质数。现在给定n和m的值,求在这个范围内所有的这种特殊质数和总个数。 (由于1的特殊性,这种特殊质数不...
阅读全文
摘要:Time Limit: 1 secondMemory Limit: 128 MB【问题描述】弗洛伊德是一个大牛!给一个有向图G,他有n个结点,现在请你求出对于他的每一对结点(x,y),从x出发走恰好k条边以后恰好到达结点y的路径条数。 【输入格式】输入文件第一行包含两个正整数n,k。(10 0 10...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述输入一棵二叉树的中序和后序遍历序列,输出其前序遍历序列。Input输入文件共两行,第一行一个字符串,表示树的中序遍历,第二行一个字符串,表示树的后序遍历。树的结点一律用小写字母表示。Output输出文件仅一行,表示...
阅读全文
摘要:Time Limit: 1000ms secondMemory Limit: 32m 问题描述:设A、B、C是3 个塔座。开始时,在塔座A上有一叠共n个圆盘,这些圆盘自下而上, 由大到小地叠在一起。各圆盘从小到大编号为1,2,……,n,奇数号圆盘着红色,偶数号 圆盘着蓝色,如图所示。现要求将塔座A ...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述输入一棵二叉树的先序和中序遍历序列,输出其后序遍历序列。Input输入文件共两行,第一行一个字符串,表示树的先序遍历,第二行一个字符串,表示树的中序遍历。树的结点一律用小写字母表示。Output输出文件仅一行,表示...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述给定A,B,C三根足够长的细柱,在A柱上放有2n个中间有孔的圆盘,共有n个不同的尺寸,每个尺寸都有两个相同的圆盘,注意这两个圆盘是不加区分的。现要将这些圆盘移到C柱上,在移动过程中可放在B柱上暂存。要求: (1)每...
阅读全文
摘要:Time Limit: 3 secondMemory Limit: 2 MB【问题描述】 有2n个棋子(n≥4)排成一行,开始位置为白子全部在左边,黑子全部在右边,如下图为n=5的情形: ○○○○○●●●●● 移动棋子的规则是:每次必须同时移动相邻的两个棋子,颜色不限,可以左移也可...
阅读全文