
递归
bear-bear11
软件工程的学生一枚
展开
-
放苹果 (递归)
例题: 放苹果 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法? 5,1,1和1,5,1是同一种分法。 输入 第一行是测试数据的数目t( 0 输出 对输入的每组数据M和N,用一行输出相应的K。 样例输入 1 7 3 样例输出 8 用递归将问题分解为规模更小的子问题进行求解 设i个苹果放在k个盘子里放法总数是f (i,k),则:原创 2018-01-30 21:33:43 · 283 阅读 · 0 评论 -
算24 (递归)
给出4个小于10个正整数,你可以使用加减乘除4种运算以及括号把这4个数连接起来得到一个表达式。现在的问题是,是否存在一种方式使得得到的表达式的结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定义一致(这里的除法定义是实数除法)。 比如,对于5,5,5,1,我们知道5*(5-1/5)=24,因此可以得到24。又比如,对于1,1,4,2,我们怎么都不能得到24。 输入数据原创 2018-01-30 16:55:59 · 1362 阅读 · 0 评论 -
N个皇后 (递归)
N皇后问题 输入一个正整数N,则程序输出N皇后问题的全部摆法。 输出结果里的每一行都代表一种摆法。行里的第i个数字如果是n,就代表第i行的皇后应该放在第n列。 皇后的行、列编号都是从1开始算。 样例输入: 4 样例输出: 2413 3142 嘿嘿๑乛◡乛๑ 先说一下递归的作用: 1.替代多重循环 2.解决本来就是递归形式定义的问题 3.将问题分解为规模更小的子问原创 2018-01-29 16:02:53 · 439 阅读 · 0 评论 -
前缀表达式 (递归)
先说一下递归的作用: 1.替代多重循环 2.解决本来就是递归形式定义的问题 3.将问题分解为规模更小的子问题进行求解 本题中“前缀表达式”的定义: 1) 一个数是一个前缀兰表达式,值为该数 2)“运算符 前缀表达式 前缀表达式" 是逆波兰表达式,值为两个前缀表达式的值运算的结果 因为前缀表达式的定义本身就是递归的,所以可以用递归来解决它 #include #inc原创 2018-01-29 20:40:21 · 1707 阅读 · 0 评论 -
爬台阶 (递归)
先说一下递归的作用: 1.替代多重循环 2.解决本来就是递归形式定义的问题 3.将问题分解为规模更小的子问题进行求解 这里是将问题分解为规模更小的子问题进行求解 先考虑第一步怎么做,根据第一步把问题分为几大类,剩下的事情就变成一个子问题,这个子问题可能是形式相同但规模更小,就可以写出递推式,再写出边界条件,就ok了๑乛◡乛๑ n级台阶的走法:先走一级后,n-1级台阶的走法+先走原创 2018-01-30 13:43:46 · 1821 阅读 · 0 评论