有「中国大学生计算机编程第一人」的称号,也被参加竞赛的学子们敬称为「楼教主」。李开复说他是未来推动中国互联网产业发展的中流砥柱!
他的传奇经历一直激励着众多年轻学子
他的老师是美籍华人姚期智院士,而姚教授可不是一般的人类!!
姚期智是图灵奖唯一的华人获奖者,也是世界现代密码学、理论计算机科学、量子计算等领域的奠基人,现任清华大学交叉信息研究院院长。
他于 2004 年辞去普林斯顿大学的终身教职,回国担任清华大学高等研究中心教授,并开设了国内首门计算机理论课程,从根本上夯实了国内计算机本科课程的理论基础。
隔年又创办了如今大名鼎鼎的「姚班」,培养出了一大批中国计算机科学的顶尖人才,其门生早已遍布国内外 AI 产业和计算机科学研究的各个关键领域:中国计算机编程第一人楼天城,还有旷视科技的三位创始人印奇、杨沐、唐文斌都是姚班走出来的学生。
简介
楼天城,1986年出生,高中毕业于杭州十四中。2004年保送进清华大学计算机系,2008年进入全球唯一华人图灵奖(计算机诺贝尔奖)得主姚期智院士领导的清华大学理论计算机中心攻读博士。楼天城是中国公认的大学生计算机编程第一人,经常以一人单挑一个队,在CEOI、ACM界无人不晓其大名,人称“楼教主”。
获奖情况
2001年11月,全国青少年信息学联赛(浙江赛区)一等奖。
2002年8月,全国青少年信息学竞赛三等奖。
2002年10月,全国高中数学联赛(浙江赛区)一等奖。
2002年11月,全国青少年信息学联赛一等奖,浙江赛区第1名。
2003年8月,全国青少年信息学竞赛一等奖,入选国家集训队。
2003年10月,全国高中数学联赛一等奖。
2003年11月,全国青少年信息学联赛一等奖。
2004年5月,国家队选拔赛第一名。
2004年9月,国际信息学奥林匹克竞赛(IOI)金牌。
2005年,百度之星程序设计大赛总冠军。
2006年,蝉联百度之星程序设计大赛总冠军。
2006年,Google全球编程挑战赛第三名。
2006年,TopCoder算法中国区第一名。
2006年,ACM/ICPC中国赛区各站冠军。
2007年,带领清华大学队在ACM/ICPC全球总决赛中获得第二名。
2007年,楼天城开发了Walk(WalkLan)(Walk脚本),构造了我国GIS软件的第一个测绘地理信息脚本语言。
2008年11月14日,Google全球编程挑战赛冠军。
2008年11月23日,临时代替受伤的同学参加ACM/ICPC杭州赛区,力压群雄夺得第一名。
2009年4月21日,再次带领清华大学队在ACM-ICPC全球总决赛中获得第二名,因为罚时,遗憾与冠军失之交臂。
2009年11月,蝉联Google全球编程挑战赛冠军。
2011年1月,在Facebook举办的2011脸书骇客杯世界编程大赛 (Facebook Hacker Cup 2011)获得第三名。
2012年3月,在Facebook举办的2012脸书骇客杯世界编程大赛中再次获得第三名。
曾经风靡大街小巷and老少爷们儿的卡牌桌游——三国杀!就是我楼天城楼教主发明的!!!(别不信,被求证网上热传的「楼天城发明三国杀」真伪时,楼天城表示这是真的,他在清华的三国杀小组里「负责游戏的平衡性检测」,确是发明者之一)
(惊不惊喜?意不意外?)
楼天城是浙江杭州人,曾就读杭州十四中,高中之前,楼天城并没怎么碰过电脑。
但他是一个具有超强理科思维的人,即使是踢球时,也居然会不断计算向对方球门底线带球角度、距离和得分之间的概率关系!
然而,后来他之所以选择计算机编程,不是因为数学太好,恰恰是数学「太差」——他总是在一些枯燥的重复性计算中犯错。
「数学上的计算体力活,如果让一个很会计算的完成,不是更好吗?」
这是楼天城进入编程世界前提出的疑问,也是楼天城在人生程序上的第一个「Hello World」!(「Hello World」几乎是所有程序猿的第一行代码)
他说:
「我喜欢那些学习方式的创意,去告诉计算机要做什么,如何控制它;特别是使用数学去告诉计算机如何解决一个问题。」
(杭州市第十四中学)
在这种「偷懒」思维的驱使下,高一的楼天城加入了计算机小组,试图寻求方法让机器帮助人进行计算。
从小就具有编程思维的他,没几个月就获得了 2002 年全国青少年信息学联赛一等奖,浙江赛区第一名,轰动一时。
2004 年,他更帮助中国队获得国际信息学奥赛(IOI)金牌,这是代表世界中学生程序设计的最高水平。
他理所当然地取得了清华大学的保送资格。清华园的时光,他编写了人生的重要几行代码。
名师出高徒
他是清华大学首届「姚期智班」学生,主要研究领域是组合算法。
(清华大学计算机科学实验班(姚班))
「失败」的美国战役
2006 年,Google Code Jam,楼天城的飞机穿越 13 小时的云层,降落在大苹果纽约市,他急匆匆地赶到了举办比赛的酒店。
(比赛以及下榻之酒店)
这是他第一次参加世界赛事,旅途的劳累令他昏昏入睡,连闹钟设错了也全然不知觉,这似乎为他比赛的失利留下了伏笔。
(选手备赛房间)
比赛总共有三道大题,250 分的题目是一道平面极值问题,500 分的题目是一道反 Hash 函数问题,1000 分的题目是涉及卷积函数和计算反函数的问题。
前期楼天城成绩尚可,三道大题完成后,位居前六。
进入比赛的「Challenge」阶段,戏剧性发生了,楼天城抓住一个挑战他人的机会,并获得成功,一举占据了榜首!
这一次,是他第一次离世界冠军如此接近。
但比赛似乎被刻意设计着,戏剧性继续发挥作用。最后阶段的「系统测试」中,楼天城接二连三掉进坑里,有的 double 用错,有的变量忘记暂存,成绩从「天堂」一下子又掉回了「地狱」,最终排名 50 左右。
比赛结果并不理想,可这似乎没有打击到楼天城,他说,「这两个错误至今仍刻骨铭心!」,经验是赚到了,甚至为后来反攻埋下了原力。
连续两年,中国人包揽冠亚军
由于诸多东欧天才黑客的存在,中国在国际性编程比赛领奖台上最多只占一个位置,直到 2008 年 Google Code Jam,楼天城领衔的中国军团历史性地包揽了冠亚军。
(谷歌全球编程挑战赛宣传海报)
本届比赛,全球超过 11000 名选手参加,最终有 100 位选手闯入在 Google 总部美国山景城举行的总决赛,其中中国选手占了 1/5。
(比赛现场)
比赛总共有 5 道问题,经过 3 个小时的激烈比赛,中国楼天城以 89 最高分,罚时仅 2:57:20 获得冠军,而同样来自中国的朱泽园以 3:10:16 的较长罚时屈居亚军,这是当时中国选手在同级别大赛的重大突破。
(2008 年 Google Code Jam 题目与结果)
2009 年,楼天城再次蝉联冠军,亚军则变成了清华 2009 级漆子超。
(2009 年 Google Code Jam 题目与结果)
在楼天城之前,中国人最高只拿到了亚军,而他之后,至今再无中国人站上冠军领奖台。
当时还是谷歌大中华区总裁的李开复积极评价楼天城等人在编程的突破,认为这些人将是
「未来推动中国互联网产业发展的中流砥柱」。
未来也即将证明他是对的。
「天才与否,取决于最终的高度」
当所有人将「天才之名」冠于其顶时,楼天城对天才做出了自己的定义。
他作为一个理科生是严谨的,他认为天才与否,取决于最终达到的高度。一些事情不过比别人早几年做到,算不上什么天才。
他的字里行间隐隐约约可以看到亚里士多德著名的三段论证明——
大前提:他的一些事不过比别人早几年做到,聪明人迟早能做到,只是时间问题。
小前提:判定天才看的是「最终的高度」,他现在高度不够,没有突破性的成就。
结论:他现在并不是天才。
这就是楼天城「天才理论」的理科式证明。
身居编程界庙堂之高位,却谦逊如入门小儿,为他增添了几分魅力。