欢迎来到天天文库
浏览记录
ID:56430017
大小:46.00 KB
页数:28页
时间:2020-06-18
《ACM程序设计基础.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ACM程序设计基础判题线上判题系统(OJ,OnlineJudge)POJZOJ…线下判题系统PC2判题结果ACAcceptedWAWrongAnswerTLETimeLimitedExceedMLEMemoryLimitedExceedPEPresentationErrorCECompilationErrorRTERun-timeErrorPC2RTE经常被误报为TLE或者contactstaff没有内存限制(4G)PE不可以自动判断比赛排名方法回答正确的题数越多的越靠前;回答正确的题数相同,则小分越小的越靠前;小分等于每个答对题目的小分和,每个答对的题目的小分=第一次答对的使用时间(
2、分钟)+20*本题错误提交的次数。对于已经正确的题目再次提交,但答案如果错误也会算作一次错误的提交,答案如果正确则这次提交不计算在内。避免编译错误使用标准函数,不要使用非ANSI标准函数除非组委会说明,否则不要使用文件输入输出(OJ一般都不容许)不要使用conio.h忘记算法的最优化比赛时不要去寻找最优的算法第一个想到的,可以AC的算法是最好的算法AC了的题目不要去想再优化题目都长一样高!题目不分难易,分值都是一样,所以先做容易的,小分越小,排名越前查看排名,可以发现其他人做了什么,题目的相对难易程度,有没有陷阱。仔细读题,谋定后动出题的人都是邪恶的!请仔细读题,看错题目无论怎么做都不
3、会对的,花5分钟仔细读题比错一次罚20分钟强!细节决定成败!让代码简单明了想怎么精简代码的时间比写这些代码用的时间长!能不用指针就不要用请将复杂的符合语句变成等价的若干条简单语句避免条件表达式?:不要使用名字相近的变量名,所有的变量名都不一样。时间永远比空间珍贵!让代码简单明了避免使用动态的内存分配STL(StandardTempleteLibrary)会简化代码,但不要滥用不要混用C和C++的输入和输出大的数组请定义为全局的递归程序请注意递归层数数据精度问题严格按输出的格式输出,不要多打一个字符比赛所需的能力一门熟练的编程语言分辨题目所属类型的能力掌握算法的能力分析算法的能力算法实现
4、的能力Teamwork超强的心理良好的比赛策略你不是超人!Teamworkismostimportant!良好的沟通能力能正确而清晰的叙述自己的想法能快速地理解他人的想法比赛是三个人的!找到自己的位置找清楚自己的定位,强化自己的专长搞清楚自己的实力,确定实际的目标为这个目标定下正确的策略不要希望奇迹的发生输入输出知道输入数据组数n scanf(“%d”,&n); whlie(n--){ 这里处理每一组输入.然后直接按格式输出,没必要开数组存储答案。 注意初始化。 }cin>>n;while(n--){}输入输出没有数据总数,以EOF结束 可能用的几个
5、函数: scanf(): while(scanf("%d")!=EOF){ 处理每一组数据,并输出. }while(cin>>n){}getchar():读入一个字符 whlie((ch=getchar())!=EOF){ }while(cin>>ch){}gets():读入一行 while(gets(buf)!=NULL) { } 用getchar注意读入换行符.cin读字符串时遇到空白符(空格,换行等)结束 char str[BUFFER]; while (cin >> str) { } get
6、line读字符串时遇到换行符结束,用于读一整行 char str[BUFFER]; while (cin.getline(str, BUFFER)) { } string str; while (getline(cin, str)) { }输入输出以0或-1结束的输入. while(scanf("%d",&n),n!=0) { }输入输出cin,cout没有使用缓冲区,速度比scanf,printf慢,如果有huge的数据可能会TLEputchar/getchar比printf/scnaf快不要混合使用cin,cout和scanf,printf,putch
7、ar,getchar。不要输出多余的空格和空行qsort一、对int类型数组排序 int num[100]; Sample: int cmp ( const void *a , const void *b ) { return *(int *)a - *(int *)b; } qsort(num,100,sizeof(num[0]),cmp);二、对char类型数组排序(同int类型) char wor
此文档下载收益归作者所有