电子科技大学:何柱|编程实力全球前100的ACM竞赛(2)
何柱从大一开始自学算法,在当时校队第一轮选拔中,他凭借206分的积分(高出第二名95分),破格提前进入了集训队。
在ACM集训队,他解决了上千道算法题,参加了上百个在线编程竞赛。大二的时候,作为“新手”的他就与两名老队员组队,参加了第40届ACM-ICPC全球总决赛,获得全球第44名的成绩。大三,他与计算机学院林维博、数学学院王晔涛组队参加第41届ACM-ICPC全球总决赛,获得全球第13名的好成绩。
集训队的队员们给何柱起了绰号叫“柱爷”,用队友们的话来说,ACM动态规划、几何、数学的编程难题,就没有“柱爷”不会的。
何柱从初中时期就已经与编程结缘。
初二的时候,学校的信息技术课程上所涉及的Visual Basic编程语言极大地引起了何柱的兴趣,“好像打开了新的大门”,何柱说。当时课堂上传授的粗浅知识已经不能满足他的求知欲,于是他开始在课余时间自学这门语言。中考结束后,何柱有了较为充裕的时间,他大量阅读编程相关书籍,从编写解决诸如一元二次方程这类简单的数学问题的程序开始实践,到后来编写出了俄罗斯方块的小游戏。
高中时期,何柱因参加机器人比赛而开始接触C语言的相关知识。他开始尝试自主开发APP。高二时,何柱用三周左右的时间制作了一款外卖APP,下载量达到几千。在这个阶段,何柱的学习方式也从阅读编程书籍转向利用搜索引擎学习最新的编程技术。
高考结束以后,当时一位学长向他介绍了ACM比赛,了解到电子科大在ACM竞赛的实力,他在高考第一志愿选择了电子科大。大一上学期,他开始自学算法,后参加CF一年进入红名(注:CF会不定期举办比赛,每场比赛依据解题数量与解题速度对个人进行积分制排位。“红名”选手约处于全球前100位)。在大二下学期时,何柱就已成为校队CF排名第一,编程实力最强的选手。
队友们称他为“算法天才”,而何柱却认为,相比与生俱来的天赋,他投入了更多时间与精力,“零基础”背后是他多于他人几年的付出。
ACM校集训队的日常训练会占据大量课余时间。何柱在大二、大三连续两年参加ACM世界总决赛,finals的一场比赛通常持续5个小时,备赛期间也严格按照5小时的标准进行训练。越是临近世界总决赛,训练强度和频度也大幅提升,赛前一个月甚至一周训练四到五次。“比赛之前根本没有周末,大一大二暑假我都没有回过家”,何柱说。
除了组队集训,何柱也进行着高强度的个人训练。为了提高代码能力与获取最新题目动态,他经常参与各大OJ(Online Judge在线提交系统)举办的线上比赛。由于线上比赛的全球性,比赛通常在北京时间23:00开始,所以熬夜对于他来说也是家常便饭。