为什么我们信息学奥赛出了国家一等奖2005年5月中旬,在犹豫了几个月后,我终于决定退出信息学奥赛。随后我交还了手中所有的图书资料,搬出了601宿舍,停下了所有的辅导课……脑袋空下来之后,过去的事开始不断闯进我的脑海——那不明白的许多事情,还有悬而未决的问题——我真想解决它们啊。至少我也要弄明白有些事为什么会发生,为什么会变成那样,而我错在什么地方。加之我的时间也不像过去那样紧张了,于是我开始慢慢整理过去。这期间,我明白了许多。2005年11月,我还是参加了第十一届全国信息学奥林匹克联赛。不过参加这次比赛的目的并不是为了争取更好的成绩,我是想重温一下过去。在从日照回莱州的车上我开始写这篇文章《凭什么我们信息学奥赛先出国家一等奖》。之所以要写这么一篇文章原因有很多,主要三方面:一是基于对过去的反思和体会;二是参加了一段时间的另一科奥赛辅导使我横向比较认识到一些问题;三是看到莱州一中我和王福龙之后的几位oier(信息学奥赛参加者)的发展,纵向比较也让我深有感触。基于上面三个原因,我决定写这篇文章。搞信息学奥赛要整日和数据打交道。我们喜欢“真实”,不喜欢“虚假”。我们只重视事实和真实的数据。因此在考虑该用什么方式呈现这篇文章时,我决定不讲空话。要让人信服,我只摆一些“数据”和“事实”。凭什么我们信息学奥赛先出国家一等奖,从以下几方面的数据可以找到答案。一、时间“时间”时衡量做功多少的一个常用的量化指标。就像天津市一位老师分析的那样:“要想取得国家一等奖至少要调够200小时的代码。”要想拿国家一等奖,首先必须投入大量的时间。我们的投入有多少呢?我们几乎挤出了所有可有占用的时间,多的时候每周活动30节。班会2节,体育2节,信息技术2节,活动2节,自理课2节,音美课1节,星期六晚自习4节,以及部分自习课,在比赛前夕,可能还会有更多的自习课被吃掉。而在校外,如寒暑假,我每天的学习时间平均超过12小时。这些时间加起来有多少?高一下学期,为有更充分的时间学习奥赛,我们将宿舍搬到了六楼值班室。这里我们可以不受学校作息时间的限制,我们可以在每晚10点熄灯铃后继续开灯学习。每晚我们会学多少时间呢?我不敢讲。但值班的老师和巡夜的警卫一定知道。就是这样的时间投入使我们有可能触及国家一等奖。一、书开始学信息学奥赛时资料稀缺。那时想要找一本Pascal语言的书都很难。我看的第一本信息学奥赛的参考书时一本80年代的老书,纸都发黄了。即便是这样我仍感到非常难得,至今我还保留着那本书的笔记。上高中后为找书我们想尽了办法:邮购,托人捎,出去比赛时我们总要先搜一下当地的书店。所以一年下来我们还真积累了一笔不小的“富”。高一下学期我从601向办公室搬书,最下面的书在腰处,最上面的书到了下巴,这就是我们一年来读过的参考书,就这么多。今年我曾让周恩朋整理了机房中现存的书。(见表1)这些本书共有19本,价值364.75元,按书后的印刷信息统计至少有676万字。而我们一个学期的所有教科书加起来也不过200万字吧。而且大家能感觉到读懂编程书上的10个字和读懂教科书上的10个字是不一样的。上面的统计只是一个很保守的统计。那些现在在其他oier手中的书我无法统计到。至于计算机和网上的我们看过的论文、讲稿、解题报告、试题讨论和电子书我就更无法统计它们到底有多少了,只是从文件夹属性上我看到它们有500M。这些书籍资料加起来就是我们取得国家一等奖的知识基础。就是这些。二、题解一道信息学奥赛题和解一道物理或数学题是不可同年而语的。你若是知道3个小时的比赛时间只要求解决4道题,你就可以想象解决一道信息学奥赛题需要耗费多少时间和精力。从参加奥赛到现在我一共做了多少题,这无法计数。不过我觉得单数一下那几个比较大的题库中的题就不少了。我们做过几个比较经典的题库,如“”、历届联赛复赛试题、Poi(PolandOlympiadinInformatics)、TJU、USACO等。TJU是一个在线评测系统,是王福龙主攻的题库。这个题库共有200多道题,王福龙解决几乎所有问题。(因为TJU网站因故已停了近4个月,所以我查不到具体的数字,这是询问王福龙的结果。)参照3小时解决4道题你可以计算一下单做这个题库要用多少时间。USACO是我后半段时间主攻的题库,这是美国计算机协会(USAcomputerorganization)专门为青少年信息学奥赛辅导而设立的题库,不用说这肯定是全英文的题库。读懂英文题,解决,提交,评测,你可以想象要花费多少时间。济南培训52题TJU试题界面USAcO主页看有6个中国人在线我的程序通过测试的界面还有学许许多多书上的,模拟赛上的,讲稿上的题目我无法统计有多少。不过我们可以从另一个角度评估一下我们做题的多少:离开新校前我拷贝了我机器上所有的程序代码,然后用计算机自动统计了我写的代码行数。得到的结果让我自己也吃了一惊,我在106微机上共写了27257行代码。而我曾看过的代码(包括别人写的)共有46239行。我想考过二级或学过写程序的人都会明白这两个数字的意味。写了这么多代码,我觉得我应该拿国家一等奖。我的s106计算机列了这么多数据,我觉得这只是“表面”而已,只是能看到的东西。这些只是我们为取得国家一等奖而付出的努力,而为什么我们能付出这种努力——为什么我们能挤出时间,为什么我们能看那么多书,为什么我们能做那么多题——内心深处的主观原因才是我们能拿国家一等奖的根本原因。那么这些内在的东西都有什么呢?我觉得至少有三大点:一、自觉和强大的自制力。二、激情和强烈的动机。三、能稍微吃点苦。一、自觉和强大的自制力。客观讲,自觉和自制并不是拿国家一等奖最重要的保证。但之所以将其放在第一位是因为这是最难做到的一点——特别是对于信息学奥赛的选手。我觉得自觉应该包括两个方面:自觉做该做的事,自觉不做不该做的事。由于奥赛基本上是和日常课内学习脱节的,并不像课内学习那样有老师、考试等一系列监督评价机制,因此学习奥赛有很大的自由度,有许多自主学习的时间,学与不学全凭自觉。对于信息学奥赛这种自由就更大了。实际上在信息学奥赛这边,一直是我们自己定学习计划,定内容和进度。杨老师的巨大作用体现在帮助我们搜集资料、解决问题、协调关系三个方面。杨老师一直很信任我们,她很少抽查我们是否在学,学了什么或学的怎么样。所以在这种监督很少的自由环境下如果你不够自觉,你是很容易效率低下,走神,甚至偷偷干不该干的事。那时我常去微机室,不少同学都问我在那里干什么。我说我在那里调程序。他们又问我你是否可以随时用电脑,可以上网?我说可以。这时他们总会偷笑着说“你们太幸福了……”我知道这句话是有言外之意的。在他们看来我们幸福是因为我们有条件做许多他们要想尽办法才能做的事,比如玩游戏,上QQ,看电影,看球……对我而言这真是太容易了,只要轻点两下鼠标一切都可以实现。可是我可以毫无愧色的说,我从来未在机房里做过那些事:我没有玩过一次游戏,一次也没有,哪怕是“扫雷”那种小游戏;虽然我经常上QQ,但我只是利用QQ和老师和全国各地oier讨论问题,我从未用QQ交过什么网友等等;我上网搜集的信息都是和奥赛或学习有关的,我没有看过什么娱乐新闻,也没看过一次比赛;我没有看过一次大片消遣,我唯一放松的方式就是听歌,那也是在很累的时候,实际上我的主机箱上基本不插耳机……因为杨老师有自己的教学任务很少有时间监督我们,所以做到上面几点只能靠自觉。想想那些在微机课上费尽心机想脱离老师监控偷偷上网的学生,你就能明白抵挡住网络的诱惑力需要多少自制力——特别是在没有监督的情况下。现在你或许能明白,我开始列的那些数据并不是虚构的“奇迹”,他们是靠自觉和自制从1+1开始积累起来的。垒到一定高度,自然会够到国家一等奖。二、激情和强烈的动机。许多人把我参加信息学奥赛的原因归结为一种兴趣、爱好。可我说这“苦差使”可真没什么兴趣或爱好可言,尤其在一中这种氛围下,尤其在一片反对声中。五年比赛,第3年才冲出莱州市,第4年才拿到国家一等奖,中间那么多失败和挫折,没有点激情没有强烈的动机,真的很难坚持这么久。我想这也是我们和其他科奥赛选手差别的地方。我们并不像他们只把奥赛当成一种老师安排的课外学习,我们真的把奥赛当成了生活的一部分,全身心的投入,梦想一个美好的结局。或许我和王福龙的一个差别也在这:我的动机比他强烈,目标更明确——就是要拿国家一等奖,不惜一切代价要拿到。我觉得正是这种激情地投入使我能释放全部的潜能,把力量拼到极限,投入那么多时间,看那么多书,做那么多题。当然我和王福龙在目标和动机上的差异并不是凭空产生的,这是由我们所处的环境不同造成的。一方面,我强烈的动机来自压力,因为那时我遇到的反对和阻力比王福龙多很多,因此我的压力很大。我告诉自己我必须在今年(2004)拿到国家一等奖,这样我就能早点退出奥赛,结束和父亲的对峙。是这种压力转化为动力拼出了全力。另一方面,我比王福龙更现实一些,或者说更功利一些:拿国家一等奖的目的就是为了保送或加分,否则我不会牺牲宝贵的学习时间发展“兴趣”。我常说国家二等奖的第一名和省三等奖的最后一名并没有差别,因为他们一样没有保送和加分资格,而只有国家一等奖可以保送或加分。因此我没的选择,我只能拿国家一等奖。现在看来我的思路对的,没有这样明确的目标和强烈的动机,我拿不到国家一等奖,至少不会在高一就拿到。三、能稍微吃点苦。搞奥赛的那段时间里,我常拿出一篇文章来读。这篇文章就是我期末考试期间贴在墙上的那篇文章《人必须要有点精神》。文章讲的是中科院计算机所“龙芯”课题组的故事,讲中国第一块高性能cPU诞生的经过。文中有许多打动我的话,给我很大的激励。像下面这段:有好几次,他在早上六、七点钟打开实验室的门,发现有些人手里扶着鼠标就靠在椅子上睡着了。这样的场景常常使他忍不住想落泪。但胡伟武还是叫醒伙伴们,询昨天晚上的进展,并鼓舞大家接着干——他开玩笑说,有时候觉得自己比“周扒皮”还狠。胡伟武有一个叫张福新的学生,在龙芯验证芯片出生前的两个月中,很少在凌晨4点前睡觉。有一次,他们在深夜等计算机的运行结果,聊天时说到了生死。张福新说最不希望老死,看着自己的生命一点点被耗尽。还有胡伟武的一段话:胡伟武动情地说,我们有一种观点,我们现在落后这么多,别人不比我们笨,如果大家都一样一周五天,一天8小时上班,恐怕很难赶上人家,惟有像当年搞“两弹一星”一样拼命,至少得累死一批人,中华民族才可能不受压制,才有可能实现民族的伟大复兴。我感觉我还是从这篇文章中“稍微”学了点吃苦精神。之所以说我是“稍微”吃苦是因为我真不敢把我吃的这点苦和他们吃的苦相提并论。但我却不是一点都未付出,就像前面说的,高一一学年我几乎停掉了所有体育、活动、自理课,这些其他同学最幸福和期盼的课却不属于我。记得高一下学期停下奥赛辅导后,我第一次上了一节自理课——那也是那个学期最后一节自理课了。回到宿舍我躺在床上看外面刚下过雨的白蒙蒙的天空,我感到了一种很大的幸福——对比那些在计算机前抓着头发冥思苦想的“自理课”,对比那些眼睛被电磁辐射烤的干涩的“自理课”,我真的感到很幸福,这样简单的幸福,能在自理课回宿舍躺躺的幸福。还有一点,我想班上的同学也会有印象。那时我和王福龙的晚饭经常只是一碗方便面。当时下午第四节我们常在机房,晚自习第一节又常有副课自习。遇到这种情况我们常常不去餐厅吃饭,一直靠到六点半再到科技楼下的商店买方便面,在办公室泡开。就是等面泡开的这段时间我们仍要抓紧时间做题,或咬着叉子讨论问题(王福龙的这个形象给我留下了很深的印象)。有几次讨论太投入忘了那边还泡着面,等到想起来时面已经烂的可以了。我在家中本来已经养成了吃完饭半个小时内不做任何运动或学习的习惯,但在那时也只能打破了。吃完饭我只能听一首歌当作休息或做一些整理文件夹这样的相对不太用脑的事,这就算休息了。有时我们调程序实在到了关键时候,往往连面也不去买了。一直要等到下第一节课我们赶回教学楼上第二节课再顺路买一碗面、泡上,下第二节课课间再解决掉。那时化学老师真好,有一次她发现了我们这种情况,竟让我们在她的课上先吃饭,真太感激她了。不过说句实话,空着肚子