摘要: 打印以下序列:(a),(b),(c),(d),(e)........(z)(a,b),(a,c),(a,d),(a,e)......(a,z),(b,c),(b,d).....(b,z),(c,d).....(y,z)(a,b,c),(a,b,d)....(a,b,z),(a,c,d)....(x,y,z)....(a,b,c,d,.....x,y,z)思路一:每个集合可以看做一个数,根据字母是26进制的特性,生成所有数(去掉一些),再排序输出。但最大的数可以到达26^26,复杂度太大。且不知如何实现。思路二:用到排列组合的思想,用递归代替26重循环。View Code 1 #include. 阅读全文
posted @ 2011-10-13 22:26 YipWingTim 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 小小的一道贪心算法题,由于读数据的时候未读完数据居然卡了两个小时。不过这次代码写的自我感觉不错,结构也清楚,这种小题现在对我来讲毫无压力啊。。。。View Code 1 #include<iostream> 2 #include<stdlib.h> 3 #include<math.h> 4 5 using namespace std; 6 7 struct ln 8 { 9 double x1;10 double x2;11 }section[1010];12 13 int cmp(const void *a,const void *b)14 {15 str 阅读全文
posted @ 2011-10-13 04:52 YipWingTim 阅读(205) 评论(1) 推荐(0) 编辑
摘要: 动态规划的综合题。绝对经典的好题目。整整做了五个小时,但是由于自己思维不严谨,太急躁,静不下心来。导致写完程序后煎熬了2个小时。得不偿失,以后写程序的时候不要再听歌。AC后没有快感,因为头脑始终没清醒过。View Code 1 //陪审团的人选,选出的M个人必须满足辩方总分和控方总分差的绝对值最小。如果差的绝对值一样,那么选择双方总分之和最大的方案。 2 //需要用一个数据结构存储辩控差一定时最大的辩控和。用二维数组jury[i][j]表示i个人辩控差为j的时候的最大的辩控和。j先加个400. 3 //jury[0][0]=0,第一个人的时候,构造出jury[1][p[i]],此时,设置pa. 阅读全文
posted @ 2011-10-13 01:38 YipWingTim 阅读(457) 评论(0) 推荐(0) 编辑