资料介绍
参加程序设计大赛的须知资料
最负盛名的程序设计竞赛程序设计竞赛有着各种各样的形式,在此,我们来介绍其中最负盛名的几个。
1.2.1 世界规模的大赛——Google Code Jam(GCJ)它是Google公司几乎每年都会举办的世界规模的程序设计竞赛,参赛者要在2~3小时内解决大约4 道题。一旦从在线(Online)进行的几轮预选中胜出,就能够参加现场(Onsite)总决赛。该赛事的特点是,每道题都备有Small和Large两组输入数据。即便是难度系数较大的问题,只要输入规模足够小,依然可以简单地求解,这一形式深受广大参赛者的喜欢。另外,GCJ并不在服务器上自动执行程序,而是要求将源代码和本地执行的结果一同提交。

1.2.2 向高排名看齐!——TopCoder TopCoder公司是一家策划并举办程序设计竞赛的公司,它举办的比赛涉及多个领域。其中之一就是算法(Algorithm)比赛,该赛事大致每周都以SRM(Single Round Match)的形式举办一场,其具有以下特点。 (1) 在 1 小时 15 分钟的短时间内挑战 3 道题。 (2) 提交的结果在比赛结束前是不知道的,整个过程中稍有失误,就会变成 0 分。 (3) 在编码阶段(coding phase)结束后,还有一个挑战阶段(challege phase)。该阶段可以查找别人代码中的漏洞。如果能够提供一组输入数据,使别人的程序返回错误的结果,就能得到额外的分数。其中第3条是该赛事独一无二的特点①,也是阅读别人代码的好机会。TopCoder还有一个深受大家喜欢的等级分系统(rating system),它会依据SRM的结果给参赛选手排名。另外,TopCoder还会举办一年一度的TCO(TopCoder Open)公开赛。一旦从在线进行的几轮预选中胜出,就能够参加在拉斯维加斯②举办的总决赛。
1.2.3 历史最悠久的竞赛——ACM-ICPC ACM-ICPC是由美国计算机协会(ACM)主办的、面向大学生的竞赛,也是历史最悠久的程序设计竞赛。这是一个三人一队的团队比赛,选手要在5个小时内解决大约10道题。因为比赛中三名选手共用一台电脑,题量又比其他赛事多,并且多是一些实现复杂的问题,所以团队配合显得异常重要。想要从日本参加该项赛事,首先要参加在线进行的国内预选赛,胜出后才能参加亚洲区域赛,取得前几名的好成绩后才能够参加世界总决赛。①
1.2.4 面向中学生的信息学奥林匹克竞赛——JOI-IOI 信息学奥林匹克竞赛是学科奥林匹克竞赛的一种,是以初中生和高中生为参赛对象的程序设计竞赛。在日本,首先要参加日本信息学奥林匹克竞赛,取得优异成绩后,才能作为日本国家队选手参加国际信息学奥林匹克竞赛。②其他比赛都需要尽可能快地解决尽可能多的问题,而信息学奥林匹克竞赛只要在规定时间内求解问题即可,成绩与所用时间无关,但是它相对其他比赛而言,求解每道题所花的时间要长得多。虽然是面向中学生的比赛,每年所出问题的难度却是非常高的。
1.2.5 通过网络自动评测——Online Judge(OJ)在互联网上,有一些被称为Online Judge的系统,它们能够自动评测以往程序设计竞赛中的题目。利用该系统就可以练习了。另外,其中一些Online Judge也会定期举办自己的比赛,不妨去参加一下。在此列举几个有名的Online Judge。 PKU Online Judge (POJ)——http://poj.org/ 题库中有大量的题目。 会津大学Online Judge(AOJ)——http://judge.u-aizu.ac.jp/onlinejudge/ 还包含日语题。 Sphere Online Judge(SPOJ)——http://www.spoj.pl/ 允许使用各种各样的编程语言。 SGU Online Contester——http://acm.sgu.ru/ 具有模拟参加历史比赛的虚拟赛功能。 UVa Online Judge——http://uva.onlinejudge.org/ 老字号Online Judge,经常举办比赛。 Codecorces——http://codeforces.com/ 与TopCoder一样定期举办比赛,又同其他网站一样不断维护历届题库。
1.3 本书的使用方法在此,就本书所涉及的内容、使用方法及注意点做一下说明。
1.3.1 本书所涉及的内容本书主要讲解程序设计竞赛中的经典问题和基础算法,并介绍便捷的实用技巧。如果仅仅是死记经典问题和基础算法,遇到难解的应用问题或是需要灵活想象力的问题时,仍然会难以下手。因此,为了加深理解,我们通过选自POJ的经典题和部分原创题来介绍实践中的例子。另外,每章末尾都备有挑战GCJ中实战题目的小栏目,里面都是精选出来的题目。尽管要找到正确的解法恐怕不太容易,还是建议读者先自己试着多思考一下。在此基础上再阅读题解,能够得到更深刻的理解。当然,在本书所介绍的解法之外,还会有更简洁或更高效的解法。大家不妨多试着去思考一下别的解法。
1.3.2 所用的编程语言比赛中可用的编程语言各色各异,而C++在几乎所有比赛中都可用。它的运行速度快,库函数丰富,因而人气很高。本书选择C++作为所用的编程语言,并基本按照g++的规范来编写源代码。
1.3.3 题目描述的处理在世界规模的大赛中,理所当然是用英语来描述题目的。不过,因为题目描述中的英语不那么难,所用的单词往往也非常有限,所以很快就能习惯。当然,这不是英语考试,字典也是允许自由使用的。另外,其中有些比赛会针对日本选手提供日语版的题目描述。英语的阅读理解不是题目的关键,因此本书的题目都与最开始的例子一样用中文概述①。
1.3.4 程序结构在许多比赛中,程序都从标准输入按指定格式读入数据。输入并非问题的关键,所以本书的程序
扫码添加小助手
加入工程师交流群
- C语言程序设计第四讲结构化程序设计之选择 0次下载
- Python的程序设计资料合集 22次下载
- Linux窗口程序设计 12次下载
- 汇编程序设计的教程课件免费下载 17次下载
- JAVA程序设计教程之JSP程序设计实验 7次下载
- C++程序设计教程之程序设计初步资料说明 7次下载
- Visual FoxPro程序设计教程之结构化程序设计的详细资料说明 8次下载
- VB程序设计电子教程之图形程序设计的详细资料说明 13次下载
- C语言程序设计教程之选择结构程序设计的资料说明 4次下载
- C语言程序设计教程之分支结构程序设计的课件免费下载 6次下载
- 简单的C程序设计教程之顺序程序设计的资料概述 4次下载
- 面向对象的程序设计总结与过程化程序设计有什么区别? 0次下载
- 南桥杯第二届程序设计竞赛 0次下载
- 一种基于ACM程序设计竞赛在线评测系统解决方案
- 实用算法分析与程序设计 0次下载
- PLC程序设计常用方法总结 6.9k次阅读
- 浅谈项目中的程序设计思路与步骤 2.4k次阅读
- 解析PLC梯形图程序设计 2.4k次阅读
- RTOS应用程序设计的五个实战技巧 1.8k次阅读
- 如何利用逻辑设计法进行PLC的程序设计 5.1k次阅读
- PIC系列单片机程序设计基础知识详细说明 5.5k次阅读
- 介绍MATLAB程序设计中M程序及使用方法 7.5k次阅读
- dsp28335如何入门:程序设计步骤 2.1w次阅读
- 基于vhdl蜂鸣器程序设计详解 2.2w次阅读
- vhdl数码管动态扫描程序设计(四种设计方案) 1.9w次阅读
- 由传统电工图转换为阶梯图的过程,浅谈程序设计 6.1k次阅读
- 单片机C语言程序设计:TIMER0与TIMER1控制条形LED 4.3k次阅读
- 程序设计基础:字符能像整数一样计算 4.9k次阅读
- 单片机与程序设计(下) 6.4k次阅读
- 单片机与程序设计(上) 8.2k次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1490次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 93次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 10次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 3次下载 | 免费
- 8基于单片机的红外风扇遥控
- 0.23 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论