ACM竞赛简介

ACM竞赛是ACM国际大学生程序设计竞赛的简称,英文全称:ACM International Collegiate Programming Contest(ACM-ICPC或ICPC)是由美国计算机协会(ACM)主办的,一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。是大学级别最高的脑力竞赛,素来被冠以"程序设计的奥林匹克"的尊称。大赛至今已有近40年的历史,是世界范围内历史最悠久、规模最大的程序设计竞赛。比赛形式是:从各大洲区域预赛出线的参赛队伍,于指定的时间、地点参加世界级的决赛,由1个教练、3个成员组成的小组应用一台计算机解决7到13个生活中的实际问题。经过近30多年的发展,ACM国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。

ACM国际大学生程序设计竞赛是由ACM(AssociationforComputingMachinery,美国计算机协会)组织的

ACM竞赛历史

ACM国际大学生程序设计竞赛(ICPC)的历史可以上溯到1970年,当时美国德州A&M大学举办了首届竞赛,主办方是UPE计算机科学荣誉协会Alpha分会。作为一种发现和培养计算机科学这一新兴领域顶尖学生的全新方式,竞赛很快得到了美国和加拿大多所大学的积极响应。

1977年,首届ICPC总决赛在ACM计算机科学会议期间举行,并由此演变成一项多级竞赛。此后,ACM担任竞赛主办方,并于1989年将大赛总部设在了美国德克萨斯州的贝勒大学。从此,该竞赛逐渐发展成了一个举办区域预赛选拔参赛队伍参加ACM-ICPC全球决赛的全球大学网络。

1997年,IBM成为竞赛的赞助方。IBM的加盟促使竞赛的规模扩大了七倍。参赛人数显著增加,涉及来自六大洲83个国家1,821所大学数万名计算领域的顶尖学生和教师。

竞赛过程

ACM竞赛总决赛整个竞赛为5个小时10道题,由计算机出题,3人一组的参赛队伍必须现场作答。经由裁判评判,根据破解试题数目的多少对参赛队伍进行排名,解题数在中等以下的队伍会得到确认但不会进行排名。根据排名将最终确定全球总决赛铜奖4名、银奖4名、金奖4名,金奖中第1名为此次比赛的全球总冠军。每届ACM/ICPC竞赛都是精英荟萃、新才辈出,因而倍受全球著名信息企业的高度关注,在过去几年中,APPLE、AT&T、MICROSOFT和IBM分别担任了竞赛的赞助商。

竞赛组织

竞赛在由各高等院校派出的3人一组的队伍间进行,分两个级别。参赛队应首先参加每年9月至11月在世界各地举行的“区域竞赛(regionalcontest)”。各区域竞赛得分最高的队伍自动进入第二年3月在美国举行的“决赛(finalcontest)”,其它的高分队伍也有可能被邀请参加决赛。每个学校有一名教师主管队伍,称为“领队”(facultyadvisor),他负责选手的资格认定并指定或自己担任该队的教练(coach)。每支队伍最多由三名选手(contestant)组成,每个选手必须是正在主管学校攻读学位并已读完至少一半时间的学生。每支队伍最多允许有一名选手具有学士学位(就是说至少有两个还没有取得学士学位),已经参加两次决赛的选手不得再参加区域竞赛。

竞赛形式与评分办法

竞赛进行5个小时,一般有6—8道试题,由同队的三名选手使用同一台计算机协作完成。当解决了一道试题之后, 将其提交给评委,由评委判断其是否正确。若提交的程序运行不正确,则该程序将被退回给参赛队,参赛队可以进行修改后再一次提交该问题。

程序判定结果有如下7种:
1、Accepted. ——通过!(AC)
2、Wrong Answer.——答案错。(WA)
3、RunTime Error.——程序运行出错,意外终止等。(RTE)
4、Time Limit Exceeded. ——超时。程序没在规定时间内出答案。(TLE)
5、Presentation Error. ——格式错。程序没按规定的格式输出答案。(PE)
6、Memory Limit Exceeded. ——超内存。程序没在规定空间内出答案。(MLE)
7、Compile Error. ——编译错。程序编译不过。(CE)

竞赛结束后,参赛各队以解出问题的多少进行排名,若解出问题数相同,按照总用时的长短排名。总用时为每个解决了的问题所用时间之和。一个解决了的问题所用的时间是竞赛开始到提交被接受的时间加上该问题的罚时(每次提交通不过,罚时20分钟)。没有解决的问题不记时。美国英语为竞赛的工作语言。竞赛的所有书面材料(包括试题)将用美国英语写出,区域竞赛中可以使用其它语言。总决赛可以使用的程序设计语言包括pascal,c,c++及java,也可以使用其它语言。具体的操作系统及语言版本各年有所不同。

赛事阶段

赛事由各大洲区域预赛和全球总决赛两个阶段组成。决赛安排在每年的3-5月举行,而区域预赛一般安排在上一年的9-12月举行。原则上一个大学在一站区域预赛最多可以有3支队伍,但只能有一支队伍参加全球总决赛。

入围世界总决赛名额(WF Slots)分为参与名额(Participation Slots)、奖牌名额(Medal Bonus Slots)和其他红利名额(Other Bonus Slots)三类。其中参与名额是从ICPC总部分配给各大洲区的参与名额(ParticipationSlots)中,由各大洲洲区主席确定并分配给洲子赛区的部分,其中各预赛区第一名自动获得参加全球总决赛的资格;奖牌名额是ICPC总部根据上一年度总决赛结果直接分配给获得奖牌的特定学校的名额;其他红利名额是各大洲区主席从ICPC总部争取到的额外奖励名额。

全球总决赛第一名将获得奖杯一座。另外,成绩靠前的参赛队伍也将获得金、银和铜牌。而解题数在中等以下的队伍会得到确认但不会进行排名。

历届冠军

1977年以来历年全球总决赛的冠军:

年份
总决赛地点
冠军大学
国家
2017年 南达科塔州拉皮特城 圣彼得堡国立资讯科技、机械与光学大学 俄罗斯
2016年 泰国普吉岛 圣彼得堡国立大学 俄罗斯
2015年 摩洛哥 马拉喀什 圣彼得堡国立资讯科技、机械与光学大学 俄罗斯
2014年 俄罗斯叶卡特琳堡 圣彼得堡国立大学 俄罗斯
2013年 俄罗斯圣彼得堡 圣彼得堡国立资讯科技、机械与光学大学 俄罗斯
2012年
波兰 华沙
圣彼得堡国立资讯科技、机械与光学大学
俄罗斯
2011年
美国 奥兰多
浙江大学
中国
2010年
中国哈尔滨
上海交通大学
中国
2009年
瑞典 斯德哥尔摩
圣彼得堡国立资讯科技、机械与光学大学
俄罗斯
2008年
加拿大班夫
圣彼得堡国立资讯科技、机械与光学大学
俄罗斯
2007年
日本东京
华沙大学
波兰
2006年
美国 得克萨斯州
萨拉托夫国立大学
俄罗斯
2005年
中国上海
上海交通大学
中国
2004年
捷克 布拉格
圣彼得堡国立资讯科技、机械与光学大学
俄罗斯
2003年
美国 洛杉矶
华沙大学
波兰
2002年
美国夏威夷
上海交通大学
中国
2001年
加拿大 温哥华
圣彼得堡州立大学
俄罗斯
2000年
美国 奥兰多
圣彼得堡州立大学
俄罗斯
1999年
荷兰 埃因霍温
滑铁卢大学
加拿大
1998年
美国 亚特兰大
布拉格查理大学
捷克
1997年
美国圣何塞
哈维玛德大学
美国
1996年
美国 费城
加州大学伯克利分校
美国
1995年
美国 纳什维尔
弗赖堡大学
德国
1994年
美国 菲尼克斯
滑铁卢大学
加拿大
1993年
美国 印第安纳波利斯
哈佛大学
美国
1992年
美国 堪萨斯城
墨尔本大学
澳大利亚
1991年
美国 圣安东尼奥
斯坦福
美国
1990年
美国华盛顿
奥塔哥大学
新西兰
1989年
美国 路易斯维尔
加州大学洛杉矶分校
美国
1988年
美国 亚特兰大
加州理工学院
美国
1987年
美国 圣路易斯
斯坦福
美国
1986年
美国 辛辛那提
加州理工学院
美国
1985年
美国 新奥尔良
斯坦福
美国
1984年
美国 费城
约翰霍普金斯大学
美国
1983年
美国 墨尔本
内布拉斯加大学
美国
1982年
美国 印第安纳波利斯
贝勒大学
美国
1981年
美国 圣路易斯
密苏里-罗拉大学
美国
1980年
美国 堪萨斯城
华盛顿大学圣路易斯分校
美国
1979年
美国 代顿
华盛顿大学圣路易斯分校
美国
1978年
美国 底特律
麻省理工学院
美国
1977年
美国 亚特兰大
密歇根州立大学
美国

亚洲预选赛

ACM国家大学生竞赛自1996年起设立中国大陆地区预选赛赛区,并由上海大学承办,至2001年总决赛止,连续举办五届。之后在境内设置多个赛点,由各大学轮流主办区域选拔赛至今。

历年中国大陆举办区域赛地点:

年份
           
1996年
上海大学
         
1997年
上海大学
         
1998年
上海大学
         
1999年
上海大学
         
2000年
上海大学
         
2001年
上海大学
         
2002年
清华大学
西安交通大学
       
2003年
清华大学
中山大学
       
2004年
上海交通大学
北京大学
       
2005年
四川大学
北京大学
浙江大学
     
2006年
上海大学
清华大学
西安电子科技大学
     
2007年
西华大学
南京航空航天大学
北京航空航天大学
吉林大学
   
2008年
中国科学技术大学 (特别赛区)
北京交通大学
哈尔滨工程大学
杭州电子科技大学
西南民族大学
 
2009年
浙江大学宁波理工学院
中国科学技术大学
东华大学
哈尔滨工业大学
武汉大学
 
2010年
哈尔滨工程大学
天津大学
四川大学
浙江理工大学
福州大学
 
2011年
大连理工大学
复旦大学
北京邮电大学
成都东软学院
福建师范大学
 
2012年
东北师范大学
天津理工大学
浙江师范大学
浙江理工大学
成都东软学院
 
2013年 吉林大学 南京理工大学 浙江工业大学
湖南大学
电子科技大学  
2014年 牡丹江师范学院 辽宁科技大学 西北工业大学 北京师范大学 华南理工大学 上海大学
2015年 东北师范大学 东北大学 中国科学技术大学 北京大学 华东理工大学 上海大学 (特别赛区)[2] 
2016年 中国石油大学(华东)          

竞赛奖励

区域赛一般分别按10%,20%,30%的比例颁发金,银,铜奖,即一般情况(120队伍,若队伍容量扩充则获奖数量也按比例增多)有12支队伍获金牌,24支队伍获银牌,36支队伍获铜牌,其余为优胜奖。

2010年亚洲区域赛中国大陆5大赛区由阿里巴巴公司赞助,获得金牌的选手可以享受绿色通道,进入阿里巴巴实习或参加工作。

2012年亚洲区域赛中国大陆5大赛区由华为公司赞助,有奖金:冠5000、亚3000、季2000,非冠亚季的金牌1200,FB 800(First Blood,指全场第一个解答出某道题),最佳女队800,顽强拼搏500(指全场最后一个AC,且只AC1道题的队伍)。

总决赛前十名的队伍将得到高额奖学金:第一名奖金为12000美元,第二名奖金为6000美元,第三名奖金为3000美元,第四名至第十名将各得到1500美元。除此之外还将承认北美冠军、欧洲冠军、南太平洋冠军及亚洲冠军。

奖励规则

ACM亚洲区预选赛颁发两个系列的获奖证书:

1、金、银、铜奖证书,按排名颁发,颁奖比例分别为参赛队数的10%,20%和30%。

2、ICPC排名证书,按学校排序,每个学校只取排序最高的队进行排序,其余队和下一所学校的队并列排名,学校排名前30名且获得铜奖的队颁发排名证书。

更多信息请访问竞赛官方网站: http://icpc.baylor.edu/icpc/

ACM竞赛介绍