简单介绍下

1、Google Code Jam(GCJ)
世界规模的大赛,是由Google公司举办的世界规模的程序设计竞赛,参赛者要在2-3个小时内解决大约4道题、如果能从Online胜出则可参加现场赛总决赛。
Google Code Jam,共四轮比赛,一轮初赛,两轮复赛,还有最后的决赛
Google早在2003年就开始举办Code Jam,旨在在全世界范围内促进编程竞赛,鼓励并嘉奖顶级编程人才。在早些年的比赛中,竞赛平台都由TopCoder提供;但从08年开始,我们开发了自己的竞赛支持平台——这将是真正的Google Code Jam!

注:网上说参加这个大赛要下载什么平台,我还没找到

下面是参加过大赛的人对他所做的三道题的分析:

第一个题目是Saving the Universe,大致意思是有很多搜索引擎协同处理搜索请求,中央服务器会把所有的搜索请求一并发送给所有的搜索引擎处理,搜索引擎可以处理与自己不重名的所有请求,也就是说Google可以处理除了”Google” 之外所有的请求,当碰到与自己重名的搜索请求时,该搜索引擎可以把剩下的交付给其他搜索引擎处理。所有的搜索引擎在接收到搜索请求后,必须按顺序一一处理,发现重名的请求时,应该连同这个重名的请求和剩下的请求一并转发给其他搜索引擎,这种转发是随时和即时的,然后给出一系列包含数据(搜索引擎和搜索请求的名称)的案例,要求计算出每个案例在处理请求时不得不转发的次数。
第二道题目是Train Timetable,意思就是火车站会安排一个A点和B点的往返火车时刻表,标记着开出时间和到达时间,每辆火车在到达目的地后有个最低停留时间,过了这个停留时间才能随时准备出发,要求就是根据给出的案例数据,计算出从A和从B必须开出的车次数目
分析:比如A点有一趟9:00开出10:00到的火车,B点有一趟需要10:10开出,11:00到A的火车,而规定火车休息时间(周转时间)为5分钟,这个时候,B点就不用重新发车,利用A发出的10:00到B的这趟火车就能满足客运要求了,因为到达时间是10:00,休息五分钟后是10:05,B点的车次是10:10才发车,所以乘客们坐这趟火车去A就OK了;而什么情况叫做必须从B开出的呢?还是上述情况,如果B有一趟是必须10:02开出,而从A点到达B点10:00的火车必须休息5分钟,而这5分钟对于B点这趟10:02的火车是等不得的,所以B必须开出一趟新的或者,这就是需要计算的情况
如果B点对于A点的火车,已经没有A点的火车可以等待时,如果这个时候B点还剩余班次要发,那么这些班次都应该算作必须从B发出的班次

第三道题目是把网球拍的球牌面看做正圆,把苍蝇看做球体,给出一系列数据,比如半径之类的,求解苍蝇被球拍命中的概率

2、TopCoder
这是由TopCoder公司举办的程序设计竞赛,这个网站可以说是一个程序设计比赛的网站,但是题型,比赛形式跟ACM/ICPC极不相同。该网站把中国纳入其赛区,大家可以上去那里跟来自全世界的程序员(事实上大多数也是大学生)进行更直接的交流,可能也是ACM/ICPC练兵的好地方吧。
该网站每个月都有两到三次在线比赛,根据比赛的结果对参赛者进行新的排名。参赛者可根据自己的爱好选用Java, C++, C#, VB或python进行编程。参赛者须在1小时15分钟的时间内完成三道不同难度的题目,每道题完成的时间决定该题在编程部分所得的分数。而比赛可分为三部分:Coding Phase, Challenge Phase和System Test Phase,比ACM/ICPC多了Challenge Phase,这部分是让参赛者浏览分配在同一房间的其他参赛者的源代码,然后设法找出其中错误,并提出一个测试参数使其不能通过测试。如果某参赛者的程序不能通过别人或系统的测试,则该参赛者在此题目的得分将为0。关于其比赛的具体规则,详看该网站上的公
告。
以上信息主要针对TopCoder公司举办的算法竞赛部分,而实际上远不只于此。
TopCoder是一个面向平面设计师和程序员的网站,它采用比赛、评分、支酬等方式吸引众多平面设计师和程序员业余工作。

3、ACM-ICPC
ACM-ICPC是由美国计算机协会(ACM)主办的、面向大学生的竞赛,也是历史最悠久的程序设
计竞赛。这是一个三人一队的团队比赛,选手要在5个小时内解决大约10道题。因为比赛中三名
选手共用一台电脑,题量又比其他赛事多,并且多是一些实现复杂的问题,所以团队配合显得异
常重要。想要从日本参加该项赛事,首先要参加在线进行的国内预选赛,胜出后才能参加亚洲区
域赛,取得前几名的好成绩后才能够参加世界总决赛。

4、JOI-IOI –信息学奥林匹克竞赛
信息学奥林匹克竞赛是学科奥林匹克竞赛的一种, 是以初中生和高中生为参赛对象的程序设计竞
赛。其他比赛都需要尽可能快地解决尽可能多的问题,而信息学奥林匹克竞赛只要在规定时间内求解问题即可,成绩与所用时间无关,但是它相对其他比赛而言,求解每道题所花的时间要长得多。 虽然是面向中学生的比赛, 每年所出问题的难度却是非常高的。

5、OJ –Online Judge
在互联网上,有一些被称为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一样定期举办比赛,又同其他网站一样不断维护历届题库

你可能感兴趣的:(挑战程序设计竞赛)