2013年11月1日

摘要: 背景: 我们寄信都要贴邮票,在邮局有一些小面值的邮票,通过这些小面值邮票中的一张或几张的组合,可以满足不同邮件的不同的邮资。 现在,邮局有4种不同面值的邮票。在每个信封上最多能贴5张邮票,面值可相同,可不同。输入: 四种邮票的面值。输出: 用这四种面值组成的邮资最大的从1开始的一个连续的区间。说明: 如结果为10,则表明使用4张邮票可组合出1、2、3、4、5、6、7、8、9、10这些邮资。名词解释: 邮资:就是你寄东西需要花多少钱。 邮票面额:是由国家发行的具有固定价格的花纸片,被称为邮票。如果你寄东西,邮局称了重量,告诉你要240分。这样你就要贴邮票了。如果现在邮局的邮票有面值为80分、5. 阅读全文
posted @ 2013-11-01 15:37 RAUL_AC 阅读(1485) 评论(0) 推荐(0) 编辑
摘要: 背景:最近,北理工出现了一只恶龙,它长着很多 头,而且还会吐火,它将会把北理工烧成废墟, 于是,校长下令召集全校所有勇士杀死这只恶龙。要杀死这只龙,必须把它所有的头都砍掉,每个勇士只能砍一个龙头,龙的每个头大小都不一样,一个勇士只有在身高不小于龙头的直径的情况下才能砍下它。而且勇士们要求,砍下一个龙头必须得到和自己身高厘米数一样的学分。校长想花 最少的学分数 杀死恶龙,于是找到你寻求帮助。输入:第一行 龙头数 n , 勇士人数 m ( 1 2 3 int main() 4 { 5 int i,j,t; 6 int dragon[105],dragon_f[105]; 7 ... 阅读全文
posted @ 2013-11-01 15:25 RAUL_AC 阅读(1259) 评论(0) 推荐(0) 编辑

2013年9月16日

摘要: 已知二叉树的中序和前序求后序已知:中序:dgbaechf 前序:adbgcefh思路:前序遍历的第一个元素是根节点a,然后查找中序中a的位置,把中序遍历分为 dgb a echf,而因为节点个数要对应,则把前序遍历分为a dbg cefh,dbg为左子树,cefh为右子树,即可递归下去。 1 #include 2 #include 3 #include 4 5 // 二叉树节点结构 6 typedef struct bitnode 7 { 8 char data; // 节点存储的数据 9 struct bitnode *lchi... 阅读全文
posted @ 2013-09-16 21:43 RAUL_AC 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 流程练习题,基本不涉及什么算法。要求:学生有(学号,姓名,性别,年龄),初始化三个学生的信息(10,wes,f,23)(20,ert,f,45)(30,str,t,89),然后对学生信息进行插入和删除处理例如I12,rt,f,67表示插入12,rt,f,67D10 表示删除学号为10的学生的信息每次操作完成以后输出所有学生的信息按学号从小到大排序输入:I12,rt,f,67输出(10,wes,f,23) (12,rt,f,67) (20,ert,f,45) (30,str,t,89)输入:D10输出(12,rt,f,67) (20,ert,f,45) (30,str,t,89) 1 #incl 阅读全文
posted @ 2013-09-16 16:53 RAUL_AC 阅读(201) 评论(0) 推荐(0) 编辑

2013年9月15日

摘要: 递归练习题(一)输入 n 值, 使用递归函数,求杨辉三角形中各个位置上的值,按照如下形式打印输出图形。例如:当 n=6 时。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 #include 2 3 // 递归求杨辉三角形 4 int YHtrangle(int row,int col) 5 { 6 if (col == 0 || col == row){ 7 return 1; 8 } 9 else{10 return YHtrangle(row-1,col-1)+YHtrangle(ro... 阅读全文
posted @ 2013-09-15 21:54 RAUL_AC 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 从键盘上任意输入一个长度不超过 20 的字符串,对所输入的字符串,按照 ASCII 码的大小从小到大进行排序,请输出排序后的结果。 1 // 算法一 2 #include 3 #include 4 #include 5 using namespace std; 6 void main() 7 { 8 string s; 9 cout>s;11 sort(s.begin(),s.end());12 cout 3 #include 4 #include 5 int cmp(const void *a,const void *b) 6 { 7 return... 阅读全文
posted @ 2013-09-15 21:00 RAUL_AC 阅读(216) 评论(0) 推荐(0) 编辑

2013年9月14日

摘要: N 个人围成一圈顺序编号,从 1 号开始按 1、2、3 顺序报数,报 3 者退出圈外,其余的人再从 1、2、3 开始报数,报 3 的人再退出圈外,依次类推。请按退出顺序输出每个退出人的原序号。要求使用环行链表编程。 1 #include 2 #include 3 4 // 链表节点 5 typedef struct node 6 { 7 int num; 8 struct node *next; 9 }LNode;10 11 int main()12 {13 int n,i;14 printf("Please input number of peop... 阅读全文
posted @ 2013-09-14 23:52 RAUL_AC 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 从键盘输入 4 个学生的数据( 包括姓名、年龄和成绩),并存放在文件 sf1 上。从该文件读出这些数据,按成绩从高到底排序,并输出所有数据。 1 #include 2 3 // 定义学生信息结构 4 struct stu 5 { 6 char name[100]; 7 int age; 8 int res; 9 };10 11 int main()12 {13 struct stu stu[4];14 struct stu fstu[4];15 struct stu tmp;16 FILE *fwrt,*fred;17 int... 阅读全文
posted @ 2013-09-14 22:18 RAUL_AC 阅读(303) 评论(0) 推荐(0) 编辑

2013年8月20日

摘要: 升级版不用栈,用递归来列举出所有的拓扑序列,循环内嵌套递归的思想值得好好领悟!例题:若干士兵站队,已知一些约束的关系,比如A必须站在B前面,B必须站在F前面等。求所有可能的站队方式输入:所有的约束关系,比如AB(表示A必须站在B前面)HJ输出:列出所有的站队方式测试用例:代码: 1 #include 2 #include 3 4 #define MAX_VERTEX_NUM 100 5 6 int ver_num; 7 int indeg[MAX_VERTEX_NUM]; 8 int help[MAX_VERTEX_NUM]; 9 int graph[MAX_VERTEX_NUM][M... 阅读全文
posted @ 2013-08-20 23:24 RAUL_AC 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 总结下算法好了:(1)构图:每个活动是一个顶点,如果A必须排在B前面,那么有边从顶点A指向顶点B,顶点B的入度+1(2)遍历所有顶点,将入度为0的顶点入栈(3)如果栈不为空,则将栈顶出栈,然后将该顶点从图中删掉,即该点指向的点的入度-1,如果减后为0则入栈,重复(3)简单版的代码,只能举出一种拓扑排序: 1 #include 2 #include 3 4 #define MAX_VERTEX_NUM 100 5 6 int ver_num; 7 char vertex[MAX_VERTEX_NUM]; 8 int indeg[MAX_VERTEX_NUM]; 9 int graph[M... 阅读全文
posted @ 2013-08-20 21:56 RAUL_AC 阅读(773) 评论(0) 推荐(0) 编辑

导航