我的编程竞赛之路 ——中国大学生计算机编程第一人楼天城访谈

标签: 坊间人语 程序人生 | 发表时间:2011-05-25 16:46 | 作者:liyn Jing
出处:http://www.programmer.com.cn

记者/陈秋歌

25岁的楼天城有“中国大学生计算机编程第一人”的称号,也被参加竞赛的学子们敬称为“楼教主”。他的传奇经历一直激励着众多年轻学子:从2001年开始参加计算机编程竞赛,并连获全国一等奖;2004年入选国家集训队,同年获得IOI金奖并被保送到清华大学;2008年开始在首位亚裔图灵奖获得者姚期智院士的理论计算机中心攻读博士;2007年和2009年两次带队参加ACM/ICPC全球总决赛并获得第二名。《程序员》近日专访了编程奇才楼天城,让他与我们分享一下他传奇的编程竞赛之路。

记者:请简单谈谈你的童年经历。童年哪些人、哪些事对你的影响最大?

楼天城:小时候,我比较爱玩,并不怎么喜欢学习。后来在8岁那年,我跟随父母一起到清华大学游玩。身处中国的最高学府,我不自觉地受到了感染,当时就给自己定下了童年的第一个目标——要在学习上投入更多的精力,严格要求自己,将来一定要到清华大学读书。这是童年中对我影响最大的一件事儿。经过十年的努力,现在这个愿望已经实现了。楼天城在赛场上

父母是童年时代对我影响最大的人,他们特别注重对我心理、性格等素质的培养,而不是局限于学业。他们认为高素质对人的影响远远超过学习能力的影响。在高中我能如愿参加各项编程竞赛,也离不开父母的支持,但前提是数学等智力科目不会受到影响。这类竞赛并不属于高考科目,而且势必会对学业产生一定影响,如果没有父母的支持,参加竞赛这条路是走不通的。父母的支持支撑着我一直在竞赛这条路上走下去。另外,我比较喜欢各种棋类,还喜欢踢足球。棋类可以锻炼人的思维,而运动也会培养人的思考能力。小时候我就考虑,向对方球门底线带球(如果是向球门带球,一定是越向前越好),球门与球的角度是越变越大还是越变越小;往前带球,这个角度是越大越好,还是越小越好。经过计算后,我发现把球带到某个地方时,角度是最大的,再往前带就会变小,而这个地方就是射门的最佳位置。结论是:这个最大的角度与距球门的距离有关。

记者:你是什么时间开始接触编程的?在学习编程过程中,都开发过哪些应用?

楼天城:我从高一开始学习编程相关知识。编程对于高中生来说,确实是一门特别的科目。我所开发的应用中印象比较深刻的是黑白棋。当时在联众的游戏平台上,它有90%的胜率。最初设计的黑白棋只能搜索到六层,它的“棋艺”并不理想,当时很多此类的黑白旗游戏也能做到这一步。为了突破这一局限,我研究了各种优化技术、博弈算法及搜索技术,对算法进行了优化,使原来的搜索增加了四层,它的计算能力、博弈水平也随之提高了很多,一时很多人都难以胜过它。虽然这个游戏并没有像李开复当年写的黑白棋那么优秀,但对我来说,还是蛮有成就感的。另外,我还做过很多其他的应用,但大多是实现一些涉及核心的关键问题,并没有作为产品公布出来。

记者:你第一次参加编程竞赛是什么时间?在之后的竞赛经历中,遇到了哪些挑战?团队协作

楼天城:2006年,我第一次参加编程竞赛,是Google编程挑战赛。由于一个失误,我与冠军擦肩而过。大赛结束后,我非常沮丧。后来在父母和老师的鼓励下,我下定决心要再等机会,赢取冠军。

两年后,直到2008年,我才有机会再次参加Google编程挑战赛,并在最后8分钟赶超了当时领先于我2小时52分的南非选手,获得了冠军。这次大赛对我来说可以算作一次真正的挑战。

记者:2010年举办的topcoder公开赛,你取得了一个不错的成绩,对此有什么感受?

楼天城:topcoder公开赛是世界范围内一年一度的编程大赛,2010年在赌城拉斯维加斯举行。我参加的其中两项不同的比赛都进入了决赛,一项是24小时的类似马拉松的Coding比赛,另一项是算法编程。这次比赛比较可惜的是,在最后决赛阶段犯了一个小小的错误,而滑到了亚军的位置。以后再有同样的机会,争取能够获得更好的成绩。

记者:请谈一下现在读博的感受。

楼天城:我从2008年开始在姚期智院士领导的清华大学理论计算机中心攻读博士学位,现在还处于学习和提高阶段,研究方向主要是以组合算法为主。总之,很幸运能够得到姚院士的指导,这段时光注定将成为我人生中最重要的阶段之一,我会用心努力做好每一天。

记者:除了编程竞赛,你之前还参加过很多数学方面的竞赛。有些人认为编程与数学没有太大的关系,你怎么看?

楼天城:可能是我们所遇到的问题不太一样吧。我遇到的问题多侧重于核心部分,往往比较抽象,对效率要求也很高,要解决它们,必须有深厚的数学基础,从这个方面来说对数学要求还是非常高的。

记者:你怎样看待编程竞赛?对有志于投身编程竞赛的人有何建议?

楼天城:编程竞赛是一个“公平、刺激、酷”的脑力游戏,除了能获得乐趣之外,还能很好地锻炼自己的思维,磨炼坚韧随和的性格。参加了多次竞赛,我真实地体会到它的残酷性。编程竞赛是顶尖高手之间全方位素质的较量,即使一时的状态不佳,也会让你与冠军失之交臂,最终换来的将是几年的漫长等待。但也相当刺激、公平。这也是我喜欢它的主要原因。我感觉自己很幸运,能够接触到这些编程竞赛。这种比赛形式,完全符合我的思维方式。在这十多年来,无论在思维的培养还是对性格的磨炼上,它对我都起了很大的作用。

至于建议,像我们这些靠理性思维来解决问题的人,平时过于依赖自己的计算能力,不相信定式、经验之类的东西。而实际情况却是,有一些凭借经验才能做到的事情,我们做得不够好,只是想当然地以为计算等于一切,结果却与目标相差很远。所以有很多非智力因素也需要去掌握。否则,你可能会因此而落后于他人。这算是我的一个建议。

另一个建议就是不要把参加竞赛当作上大学的一个途径。竞赛可以帮助你提高自学能力和综合素质,锻炼思维能力,也可以帮助你提高其他科目,但平时一定要注意协调好竞赛与其他科目之间的关系,不要把其他科目落下,不要让竞赛成为影响正业的事情。

(本文来自《程序员》杂志11年04期,更多精彩内容敬请关注04期杂志)

《程序员》11年04期精彩内容:HTML5来临!

《程序员》杂志订阅

相关 [编程 竞赛 中国] 推荐:

我的编程竞赛之路 ——中国大学生计算机编程第一人楼天城访谈

- Jing - 《程序员》杂志官网
25岁的楼天城有“中国大学生计算机编程第一人”的称号,也被参加竞赛的学子们敬称为“楼教主”. 他的传奇经历一直激励着众多年轻学子:从2001年开始参加计算机编程竞赛,并连获全国一等奖;2004年入选国家集训队,同年获得IOI金奖并被保送到清华大学;2008年开始在首位亚裔图灵奖获得者姚期智院士的理论计算机中心攻读博士;2007年和2009年两次带队参加ACM/ICPC全球总决赛并获得第二名.

每日站会、代码审查、结对编程 之开源中国实践

- - 翟志军
在我来到开源中国之后,尝试将每日站会、代码审查、结对编程这三种编程实践带入团队. 而这个过程,我个人觉得是一项非常宝贵的体验. 先介绍下目前我们团队的结构:3名Java开发,1名前端,2名实习. 以下我不会详细介绍它们分别是什么,也无意讨论它们有什么好处坏处,本文侧重分享在实践它们的过程可能遇到的问题,以及我们是如何处理的.

索尼正式面向中国发布 KOOV 可编程机器人,STEM 教育要从娃娃抓起

- - 理想生活实验室
北京时间 16 日上午,索尼在位于朝阳公园的索尼探梦科技馆举办了发布会,正式介绍可编程教育机器人 KOOV. 此前 KOOV 在 去年 3 月的第三届“索尼魅力赏”上出现在外场展台,但并未被正式介绍,而今年它成为了主角——它由索尼国际教育公司开发,专门面向 8 岁以上青少年,通过“乐高式”的模块拼搭,配合编程来创建机器人,基于 STEM 教育模式激发孩子的创造和思维能力.

有意思的小学数学竞赛题

- Anubis - 博客园-首页原创精华区
    刚刚在matrix67的部落格在到一篇很有意思的帖子,跟大家分享下. 原文地址(http://www.matrix67.com/blog/archives/2434).     今天在某小学数学竞赛真题上看到了这么一个问题:图中阴影部分是一个正方形,求它的边长. 当然,题目本身并不难,大家一看就知道答案;问题的关键在于,这个问题是一道小学竞赛题,这意味着这个题目一定有一个异常巧妙的傻瓜解.

有意思的小学数学竞赛题-2

- Johnny - 博客园-首页原创精华区
刚刚在matrix67上看到一篇很有意思的帖子,原文http://www.matrix67.com/blog/archives/4485. 我老早就写过一个经典的小学几何题. 如果你还没看过这个问题,你一定要去看看. 经告诉我,当年带领学生参加这次竞赛时,领队老师们都没有想到这个问题的“小学生解法”,以至于开始质.

Bradley Horowitz 谈论 Google+: 我们会赢得竞赛

- tossking - 爱范儿 · Beats of Bits
Google 的工程师 Steve Yegge 在 Google+ 上发了一通抱怨,认为 Google 在发展 Google + 上缺乏平台策略,他将 Google+ 称为” 机械的反应,短期思考的一个案例,基于一个错误的观念,即认为 Facebook 的成功是因为出色的产品. ”在这通抱怨中,Yegge 提到 Google+ 发布后一直没有 API ,这是 Google 缺乏长远观念的一个例子.

放慢速度,生活不是一场吃热狗竞赛

- 飞 - 译言-每日精品译文推荐
放慢速度,生活不是一场吃热狗竞赛. 书架上你未曾读过的书,满满当当的. 待办事项清单上有百余项,而你却只完成了两项. 有如此之多想要做的,想要看的,想要得到的. 在你脑海中的某处,你疯狂地试图找到一个方法,可以用你紧握的小拳头彻底抓住它,塞进你的生活里. 没有时间去咀嚼和回味,你会后悔和消化不良的.

大众科学:未来的建筑物,2011年摩天大楼竞赛

- 熵不起 - 果壳网 guokr.com - 果壳网
形似煎饼的建筑,利用闪电的发电厂和建在海上可以生产饮用水及清理垃圾的大楼,这些都是在2011年evolo主办的摩天楼大赛中出现的构想. 该大赛旨在展现对于未来建筑的新想法和设计. 此次比赛,是为了激起垂直密度这一新概念的讨论、开发和推广. 比赛要求参与者探究摩天大楼和自然界、社会以及城市之间的关系.

儿童教育| 竞争、竞赛在什么时候对孩子有用?

- - 译言-医疗与健康
竞争、竞赛在什么时候对孩子有用. 通过不同的竞争情景培养不同的竞争技能. Johnson Deng【译】. 摘要:在现实生活竞争(或竞赛)是不可避免的. 那么,什么样的竞争情景对孩子有利呢. 本文将不同的竞争情景划分为三大类:1)零和竞争情景;2)非零和竞争情景;3)混合动机竞争情景. 那么,具体采取什么样的竞争情景来培养孩子才能对他们的课堂学习和未来有用呢.

为什么这两家娱乐公司都在不务正业搞AI竞赛?

- - IT瘾-tuicool
本文转自公众号: 智能相对论(ID:aixdlun),作者:颜璇. 十数年时间,中国互联网视频历经风云变幻,总是你方唱罢我才休. 市场一直在变,而在公众认知范围内,视频行业的竞争点在内容、在流量、在资金. 直到近期,爱奇艺AI竞赛“发榜”,市场惊觉在竞争格局越发紧张的现在,在线视频已经在凭技术突围.