上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 37 下一页
摘要: 题目描述:Problem Description经过锦囊相助,海东集团终于度过了危机,从此,HDU的发展就一直顺风顺水,到了2050年,集团已经相当规模了,据说进入了钱江肉丝经济开发区500强。这时候,XHD夫妇也退居了二线,并在风景秀美的诸暨市浬浦镇陶姚村买了个房子,开始安度晚年了。 这样住了一段... 阅读全文
posted @ 2013-07-20 23:12 xiaxiaosheng 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 解题报告:水题,直接附上代码,只是觉得这题的作者是不是吃饱了饭撑的,反素数的概念跟这题一点关系都没有。 1 #include 2 int judge1(int k) { 3 int tot = 0; 4 for(int i = 1;ijudge1(MIN))17 MIN = i;18 printf("%d\n",MIN);19 }20 return 0;21 }View Code 阅读全文
posted @ 2013-07-19 17:15 xiaxiaosheng 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 题目描述:输入一个偶数,判断这个偶数可以由哪两个差值最小的素数相加,输出这两个素数。题目分析:模拟题,注意的是为了提高效率,在逐个进行判断时,只要从2判断到n/2就可以了,并且最好用打表法判断素数。代码附上。。。 1 #include 2 #include 3 #include 4 const int MAX = 10005; 5 bool prim[MAX]; 6 void dabiao() { //先打素数表 7 memset(prim,0,sizeof(prim)); 8 for(int i = 4;i<=MAX;i+=2) 9 prim[i... 阅读全文
posted @ 2013-07-19 16:44 xiaxiaosheng 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 题目描述:给定一个区间,将这个区间里所有既是素数又是回文数的数输出来。题目分析:这题的这个数据范围比较大,达到了10^8级别,而且输入的数据有多组,又因为判断一个数是否是回文数貌似只有暴力判断,时间限制是1000ms,所以如果对于每组数据输入都暴力判断的话,应该就TLE了,那么我们该怎么办呢。我们想到回文数本来就不多,再加上还必须要是素数,猜想数据范围虽然非常大,但是在这个区间里面满足条件的数应该不多,我算了一下,只有700多个,所以我们很自然地想到用离线打表,将这个区间内所有的满足条件的数存到一个数组里面去,然后输出的时候判断每一个数是否在输入的这个区间里面就可以了。先给出本地打表代码: 1 阅读全文
posted @ 2013-07-19 16:12 xiaxiaosheng 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 题目描述:给你一个N,表示有一个N*N的棋盘,现在要在棋盘上摆放N个皇后,为了使这N个皇后不互相攻击,要求是这N个皇后中任意两个皇后不能在同一行也不能在同一列,也不能在同一个45度角的斜线上,输入一个N,问,一共有多少中排列的方法。解题报告:要判断有多少中方法,我们可以有几种选择,第一种,列出N*N的所有子集,然后逐一判断每个子集是否满足条件,然而这样的计算量显然太大,第二种,在N*N个格子里面选N个格子,也就是选N个格子出来进行排列,这样计算量还是太大,第三种,很显然,每一行或者每一列都只有一个皇后,现在我们确定每一行只有一个皇后,所以接下来我们只要确定每一行中的皇后排在那一列,这样,我们只 阅读全文
posted @ 2013-07-19 14:28 xiaxiaosheng 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 解题报告:题目描述:写一个程序给一个编程考试C++实时提交系统排名,给你的数据是题目的总数,每次错误提交罚的时间分,每位用户的姓名,然后是输入用户每题的完成情况,有一下几种情况,第一,输入只有一个正值,表示该题只有一次提价记录,且已经AC了,第二,有一个正值,并且,正值后面有一个括号,括号里面有一个数字,前面的正值表示AC该题所用的时间,后面括号里面的数表示总共有多少次错误的提交记录,第三,只有一个负数,表示该题提交了这个负数的绝对值次,但还没有AC,第四,只有一个0,表示该题没有提交记录,对于每一题,如果已经AC了,但是有错误的提交记录,就要将每一次错误的提交记录都罚一定的时间,并且算进总的 阅读全文
posted @ 2013-07-19 10:36 xiaxiaosheng 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 解题报告:有一种猜想,即任意的一个数,将它和它的倒序数相加,经过若干次操作之后,一定能得到一个回文数,倒序数是指把这个数倒过来表示的数字,如123的倒序数就是321,现在要你判断给定的一个n 要经过多少次操作才能得到一个回文数,并且输出操作的过程,即输出每次相加后得到的结果,所以只要写两个函数,一个是用来判断这个数是否是回文数,另一个是用来判断这个数的倒序数,就OK了。 1 #include 2 bool judge(int k) { //判断是不是回文数 3 int i = 0,x[10005]; 4 while(k) { ... 阅读全文
posted @ 2013-07-18 15:18 xiaxiaosheng 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 解题报告:有n支球队参加比赛,现在裁判手中有每场比赛的胜负信息,要求利用这些信息为所有球队排名,如果两支球队不能确定胜负的,要求把球队编号小的放前面,输入首先有一个n,一个m,然后有m行,每行输入一对数字,如输入x y表示编号为x的球队赢了编号为y 的球队。感觉这题优点BT,本来题目不难,就是一道拓... 阅读全文
posted @ 2013-07-18 13:13 xiaxiaosheng 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 解题报告:小明走在一条小路上,这条小路的长度是10米,从左到右依次是0到10一共十个点,现在天上会掉馅饼,给出馅饼掉落的坐标和时间,一开始小明的位置是在坐标为5的位置,他每秒钟只能移动一米的距离,问他最多能得到多少个馅饼。这题可以说是一个动态规划题,就是一个数塔的变形,而且跟数塔的区别很小,我们可以把时间当成是数塔中的层,坐标就是数塔中的横向的位置,然后就是从时间最大的那一层出发,往时间最小的方向递归,最后得到的dp[0][5]就是我们所要的结果。 1 #include 2 #include 3 #include 4 int max(int a,int b,int c) { 5 int... 阅读全文
posted @ 2013-07-17 22:36 xiaxiaosheng 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 解题报告:这题就是求两个单源点之间的最小距离,属于最短路问题,由于数据量很小,只有100,所以这题可以用弗洛伊德也可以用迪杰斯特拉,都可以过,但是用迪杰斯特拉会快一点,但用弗洛伊德的代码会稍短一点,纯属裸的算法题,这里给出两种算法的代码:弗洛伊德算法: 1 #include 2 #include 3... 阅读全文
posted @ 2013-07-17 17:30 xiaxiaosheng 阅读(217) 评论(0) 推荐(0) 编辑
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 37 下一页