
ACM算法
冷冰若水
我不怕万人阻挡,却只怕投降%……
展开
-
杭电 ACM 1004
微软招聘信息(主要针对已经有工作经验的) Number SequenceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 68329 Accepted Submission(s): 15854 Problem Descript原创 2012-12-04 23:24:36 · 953 阅读 · 0 评论 -
蓝桥杯——8密码发生器
在对银行账户等重要权限设置密码的时候,我们常常遇到这样的烦恼,如果为了好记用生日吧,容易被破解,不安全,如果设置不好记的密码,又担心自己也会忘记,如果写在纸上,担心纸张被别人发现或弄丢了... 这个程序的任务就是把一串拼音字母转换为6位数字密码。我们可以使用任何好记的拼音串(比如名字,王喜明就写wangximing)作为输入程序输出6位数字。 变换的过原创 2013-05-04 21:25:45 · 1270 阅读 · 0 评论 -
杭电 ACM 1016
Prime Ring ProblemTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 16380 Accepted Submission(s): 7445Problem DescriptionA ring is原创 2013-02-23 16:53:09 · 1169 阅读 · 0 评论 -
C中的字符串操作函数
sprintf语法#include int sprintf(char *buffer, const char *format, ……);用法示例:char string[50];int file_number = 0;sprintf(string, "file.%d", file_number);sprintf函数和printf类似,只是把输出发送到buffer原创 2013-02-15 22:19:32 · 751 阅读 · 0 评论 -
竞赛中需要注意的几个问题
1、整数值用%d输出,实数用%lf输出。%.5lf 表示小数点后的位数,而整数表示位数的方法是:%05d。2、整数/整数 = 整数,浮点数/浮点数 = 浮点数。这条规则同样适用于加法、减法、和乘法。算法竞赛中的一些规则:首先:选手程序的执行应该是自动完成的,没有人工干预。不要在用户输入之前打印提示信息(例如:“Please input n:”),这不仅不会为程序赢得更高的“友好界面分”原创 2013-02-11 18:14:31 · 844 阅读 · 0 评论 -
判断闰年的算法
当我们遇到这个问题时,大家都知道该怎么计算,那就是所谓的:四年一闰,百年不闰,四百年再闰。根据这个写出的程序的核心算法就是:if((n%4 == 0 && n%100 != 0) || n %400 == 0){}但是到底是为什么要这么算呢,本来按照我自己的理解,好像只要是4的倍数就应该是闰年,所以对这个算法一直没有深入的理解,一直不知道它的原理,所以就自己搜了一下资料,了解了一下原创 2013-02-15 00:41:46 · 23846 阅读 · 3 评论 -
程序竞赛中需要注意的一些小问题2
1、浮点运算可能存在误差,在进行浮点数的比较时,应考虑到浮点误差。浮点数不应用来做等号的比较。2、当需要统计某种事物的个数时,可以用一个变量来充当计数器。3、不要忘记测试,一个看上去正确的程序可能会隐含着错误。4、在观察无法找出错误时,可以用“输出中间结果”的方法来查错。5、求阶乘之和:S=1!+2!+3!……+n!;代码:#include int main(voi原创 2013-02-15 01:27:04 · 694 阅读 · 0 评论 -
杭电 ACM 1018
Big NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 17625 Accepted Submission(s): 7897Problem DescriptionIn many ap原创 2012-12-20 22:35:14 · 734 阅读 · 0 评论 -
杭电 ACM 1014
Uniform GeneratorTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10985 Accepted Submission(s): 4337Problem DescriptionCom原创 2012-12-20 20:52:38 · 523 阅读 · 0 评论 -
杭电 ACM 1012
http://acm.hdu.edu.cn/showproblem.php?pid=1013简单的小题;代码:#include#includedouble multi(int n){int i;double mul = 1;for(i = 0;i {if(i == 0){mul = 1;continue;}mul = mul*i;原创 2012-12-16 18:58:43 · 658 阅读 · 0 评论 -
杭电 ACM 1008
http://acm.hdu.edu.cn/showproblem.php?pid=1008代码:#includeusing namespace std;int main(void){int n;int num, lastnum;int time;while(cin >> n && n != 0){time = 0;lastnum = 0;for原创 2012-12-16 19:00:34 · 552 阅读 · 0 评论 -
杭电 ACM 1013
http://acm.hdu.edu.cn/showproblem.php?pid=1013Digital RootsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 32980 Accepted Submissio原创 2012-12-16 22:28:42 · 682 阅读 · 0 评论 -
杭电 ACM 1007
先说下题意,很简单,给n个点的坐标,求距离最近的一对点之间距离的一半。第一行是一个数n表示有n个点,接下来n行是n个点的x坐标和y坐标。实数。 这个题目其实就是求最近点对的距离。《算法导论》上有详细讲解,王晓东的书上也有代码。主要思想就是分治。先把n个点按x坐标排序,然后求左边n/2个和右边n/2个的最近距离,最后合并。合并要重点说一下,比较麻烦。 首先,假设点是n个,编号转载 2012-12-12 21:10:05 · 2751 阅读 · 2 评论 -
埃拉托色尼筛选法求素数
埃拉托色尼筛选法求素数,简单来讲就是,如果将一个整型数组的各个元素初始化为它的下标的话,那么从2开始读取这个数组的元素,将之后2的倍数的数删除,读取3并将之后的3的倍数删除,读取5,并将之后5的倍数删除,一直做到所要求的范围,那么此时,数组中所剩的数就是这个范围内的素数(0、1除外)。简单实现的代码:#include#define N 100int a[N];int main(原创 2012-12-08 22:57:44 · 1464 阅读 · 0 评论 -
蓝桥杯——3第39级台阶
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。代码我是看了这位的博客,改进了一下;地址:http://blog.csdn原创 2013-05-08 14:20:42 · 1409 阅读 · 0 评论