头脑奥林匹克ACM/ICPC大赛收官

2015-08-03 17:32陈翔
中国计算机报 2015年20期
关键词:摩洛哥编程队伍

陈翔

本报记者远赴摩洛哥,现场直击第39届ACM/ICPC国际大学生程序设计竞赛。该大赛被誉为编程界的奥林匹克,全球顶尖天才的巅峰对决,参加总决赛的128支队伍海选自2534支大学代表队。大赛于北京时间5月21日凌晨2点落下帷幕,中国的清华大学队和北京大学队分获第四和第五名,那么谁夺冠了?

世界上只有两种人,程序员和非程序员。

这是典型的程序员式的二进制思维论断。

如果你觉得很有道理,那么有编程潜质的你就一定不会对ACM/ICPC(美国计算机协会/国际大学生程序设计竞赛)感到陌生。这是全球绝世高手之间的较量,可谓是头脑的巅峰对决。

今年第39届ACM/ICPC大赛选择在北非摩洛哥的历史名城马拉喀什进行。大赛不仅得到了国王穆罕穆德六世的重视,总理还亲自来到开幕式现场,东道主又由Mohammed V、AL Akhawayn、Mundiapolis三所大学联合承办,可见摩洛哥的重视程度。不过笔者首先想到的是,摩洛哥国王如此重视计算机大赛,是不是因为2002年他迎娶的王妃就是电脑工程师出身呢?

作为一项在计算科学与工程界长期以来最具盛誉的大学赛事,ICPC吸引了全球绝世高手参与其中。今年,经过为期数月以国家、区域为范围的层层预赛筛选出参与第39届ICPC年度总决赛的128支队伍,他们三人一组,需要在严格限定的5小时内解决13道编程难题,向冠军奖杯发起冲击。

笔者受邀来到摩洛哥,现场直击5小时大赛的生死时速。摩洛哥当地时间20日19点,北京时间21日凌晨2点左右,大赛结果新鲜出炉,笔者先来挖挖背后的故事,还会剧透部分大赛试题,IT老板、虎爸虎妈也可以让身边的编程高手试试身手。

最快解题记录诞生

本次大赛亮点很多,最引入注目的一点则在于:有史以来最快解出第一道题。北京大学代表队以5分钟时间解出第一道题目,获得全场最快解题奖。这一速度快得不可思议,以至于赛事的主要组织者、ICPC执行总监Bill Poucher就不止一次表示:“5分钟我连题目都还没有读完。”

当然,事实证明,这也是13道题目中最简单的一道,几乎所有参赛队伍都解出了此题,最慢耗时近一个小时。

“天才”辈出

每届大赛的题目数量并不固定,12道和13道较为常见,而题目也会难易搭配。以往如果能够答对其中10道基本上进入前三,而且冠军队伍中还没有出现过在5小时比赛时间内答对所有题目的情况,而这个奇迹就出现在本次大赛上。

冠军依旧是圣彼得堡信息、光电与机械学院,这不仅是它第六次夺冠,成为ICPC有史以来获得冠军次数最多的学校,而且它还答对了所有13道题,创下新的“大满贯”记录。这用“天才”已经不足以形容,可以看作“外星人”吗?

其中G题除了冠军队伍之无队答出,这应该算是最难的题目。

东欧人和东亚人的对决

综观本届比赛获得奖牌的前12名大学队伍,分明就是东欧人与东亚人的对决。

金牌获得者为第1到第4名分别是:圣彼得堡信息、光电、机械学院,莫斯科大学,东京大学,清华大学。银牌获得者为第5到第8名分别是:北京大学、加州伯克利分校、克罗地亚的Zagreb大学、布拉格的charles大学。铜牌获得者为第9到第12名:分别是上海交通大学、麻省理工学院、韩国大学、华沙大学。

你也许会奇怪,加州伯克利分校和麻省理工学院明明是美国大学,怎么也并入东欧人与东亚人的对决?秘密就在于,代表该校参赛的也是中国学生,MIT三名都是东亚面孔,笔者没有来得询问他们是否都是中国留学生,不过,加州伯克利分校的三名选手都是中国留学生,他们本科一名来自北大、两名来自清华。看到了吗?毫无例外,获得奖牌的前12支队伍中的选手不是来自东欧,就是来自东亚。

印度队伍为何表现不突出

印度队伍为何表现不突出?这是很多人心中的疑问。同时可能的问题还有,最先在美国兴起的ICPC大赛,怎么近年来美国本土选手参加的不多呢?

在美国顶级的软件企业中,印度人和华人一样都大量就业。但是印度人总能在IT企业中高升,要么当中层领导,要么在研究院高就。可为何计算机编程大赛ICPC却后继无人呢?

ICPC亚洲地区总负责人黄金雄表示,印度英文是官方语言,印度人普遍英文水平高于中国,因而更容易上位。此外,大赛虽然是编程大赛,但其实考察的是数学能力。而各大软件公司中的成熟软件产品是规模应用的程序,考察的多是流程与管理,因此企业环境和大赛环境截然不同。

而美国呢?其实,美国家庭的孩子更爱法学院、医学院、金融学院,理工科的数学和计算机系也有美国本土学生,但是他们更擅长实际项目的求解,而不是有标准答案的大赛试题。

不仅仅是编程竞赛

事实上,将来自全球不同地方、不同文化背景、不同肤色并操着不同语言的绝世高手汇聚到一起,在为期一周的时间里共同编写计算机程序,这本身就是一件极具社会价值和潜力的大事。队友之间互相协作相互理解共同完成目标,也是大赛的初衷之一,而头脑的对决、冠军的争夺只是这一国际赛事的高潮部分。

正是意识到这一点,为给顶级天才提供施展抱负的平台,从1997年开始ICPC以IBM为长期独家赞助伙伴也是经过深思熟虑的选择。IBM的初衷和大赛完全一致,就是鼓励绝世高手投身最新的云、大数据等实际商业社会中的技术革新,并帮助他们完成从学生到商业和技术领域人才的转变。Bill就表示,大赛的目的不在于决出谁是最好,而在于每个人可以变得更好。据悉,经过十余年的发展,赛事规模已经增长了10倍。本届大赛就吸引了来自上百个国家和地区的38160名队员、2534支大学代表队参赛。

为何选择摩洛哥

这是个有意思的话题。

对于中国来说摩洛哥远在北非,是个遥远又不熟悉的国度,以至于笔者的不少朋友会把摩洛哥和摩纳哥混淆,笔者走在摩洛哥街头也经常被认为是日本人或者韩国人,也许多数国人对它的印象还来自于上一任摩洛哥国王的王妃是好莱坞影星格蕾丝凯利。

几年前,突尼斯政局动荡,引发北非格局发生巨变。当年埃及总统下台,利比亚卡扎菲身亡,阿尔及利亚改革……摩洛哥取代埃及成为北非最受欢迎的旅游之地,带动了摩洛哥经济的发展,而且信息技术也被纳入国家发展战略。可以说稳定的摩洛哥成为不少全球大型会议的非洲首选之所。而作为以法语和阿拉伯语为母语的国家,摩洛哥举行ICPC也可以促进这一地区和语言国家对于计算机编程和信息技术的兴趣与普及。当然,不论比赛在哪里举行,以商业和技术相结合的方式培养计算机科学人才,是ICPC历久弥新的核心主题。

猜你喜欢
摩洛哥编程队伍
编程,是一种态度
编程小能手
纺织机上诞生的编程
摩洛哥椰枣年创收20亿迪拉姆
“一带一路”文化使者采风摩洛哥
北非印象·摩洛哥
还剩多少人?
“五老”队伍大有可为