递归
soloier
这个作者很懒,什么都没留下…
展开
-
3】Hanoi汉诺塔问题
有N个圆盘,依半径大小(半径都不同),自下而上套在A柱上,每次只允许移动最上面一个盘子到另外的柱子上去(除A柱外,还有B柱和C柱,开始时这两个柱子上无盘子),但绝不允许发生柱子上出现大盘子在上,小盘子在下的情况,现要求设计将A柱子上N个盘子搬移到C柱去的方法。 ①如果N=0,则退出,即结束程序;否则继续往下执行; ②用C柱作为协助过渡,将A柱上的(N-1)片移到B柱上,调用过程mo原创 2016-05-17 11:16:32 · 719 阅读 · 0 评论 -
集合的划分
【问题描述】 设S是一个具有n个元素的集合,S={a1,a2,……,an},现将S划分成k个满足下列条件的子集合S1,S2,……,Sk ,且满足: 则称S1,S2,……,Sk是集合S的一个划分。它相当于把S集合中的n个元素a1 ,a2,……,an 放入k个(0<k≤n<30=无标号的盒子中,使得没有一个盒子为空。请你确定n个元素a1 ,a2 ,……,an 放入k个无标号盒子中去的划分原创 2016-05-17 11:24:47 · 16669 阅读 · 2 评论 -
数的划分(NOIP2001)
【问题描述】 将整数n分成k份,且每份不能为空,任意两种分法不能相同(不考虑顺序)。例如:n=7,k=3,下面三种分法被认为是相同的。 1,1,5; 1,5,1; 5,1,1; 问有多少种不同的分法。 【输入格式】 n,k (6【算法分析】方法1、回溯法,超时,参考程序如下。#include<cstdio>#includ原创 2016-05-19 07:31:12 · 785 阅读 · 0 评论