关于ACM的记忆

遗忘是惯性的

感觉很多事情,好想都已经忘记了,最近看了一些文章,想起一些事情,也想着自己也写一些东西。
首先,我想说,其实我ACM 经历并不如人意,也没有取得太多的成绩,只是作为一个计算机专业的学生而言,它是属于我生命中的一部分。
我曾经努力的希望拿到成绩,但是有一些东西并不是你希望,就会有结果,但这并不妨碍我去努力。这也是为什么要写这个回忆的意义。

开始

起初开始对于计算机这个东西,我其实完全是模糊的概念。相比于其他的同学,或者同龄人来说,我不过是比他们更早的接触到电脑而已。
真正对我有一些比较重要的影响的因素,可能要归属于在我临上大学前,在我的姑姑家里,看到一本《大学生计算机理论》。对于其中讲述的专业知识,我其实根本就看不懂,唯一比较感兴趣的只是书中的之中关于计算机打字指法的示意图,让我非常的感兴趣。
也正是这个示意图,让我到现在为止一直保持了相对比较标准的计算机指法。

计算机科学与技术

上大学之后,我是整个班级中指法相对比较标准的。但是这其实并没有什么大作用,可能顶多就是别人觉得这个同学以前可能接触过电脑而已。
但是其实很多事情还是需要依靠兴趣,上大学之后,好像自己也确实对计算机比较的感兴趣。

大一刚上来就是开始学习计算机语言,其实我当时对于什么是计算机语言也是完全懵逼状态。
学长给的解释是,人和人之间沟通的语言就是汉语,英语。那么人和计算机沟通就是用 C, C++ ,java等语言。从这些解释中,好像听懂了什么,但是好像又什么都没听懂。
就在这种懂与不懂之间开始了计算机专业的学习。第一门课程C++, 只知道写一段代码,就可以在小黑框里面输出 “hello,world”,还是觉得挺神奇的。感觉计算机也就是这样嘛,挺简单的。

但是后来计算机实训课上,开始需要做题目的时候,才发现一切好像不是那么回事。记得第一次实训的题目,是关于摩斯密码的程序,其实就是将字符进行移位,得到一个新的字符。对于当时的我来说,脑子里面一片空白,不断的提交,不断的提示红色 wrong answer(当初最不想看到的词汇),有点头脑麻木。在看着同学一个一个的不断的提交成功中,开始不断的怀疑自己,是否真的适合学习计算机。第一次实训成绩排在了全班的倒数中,简直有点不好意思。

由于知道自己好像不是很适应,而且学习提供了一个 在线提交程序的平台。于是没事的时候,就去到学校二楼的机房里面开始做题训练。那个时候由于自己没有电脑,也只能去学校的机房做题目,而且机房收费1块钱一个小时,经常还供不应求,人满为患。说是学校的机房,其实就是一个网吧,供那些还没有配置自己电脑的同学进行上网使用。

所以每天中午下课,下午下课,我基本每次都是第一个冲向机房,然后验证我上课在纸上写好的代码,是否正确。顺利的时候,可能半个小时提交完成通过就撤了,不顺利的时候就是一个中午或者一个晚上机房不停的验证。当时也不知道为什么做出来一个题目会那么的高兴。记得当时朋友还问过我,不就是做出来一个题目么,有啥开心的呢,饭都不用吃了?
现在想想,其实还是挺感谢当初的那段时光的。
之后为了提升自己的能力,中间还不断的跑向图书馆看书(毕竟教材是在太深奥难读了)。为了更加方便的学习,我成为了班上第一个买电脑的学生,开始拥有了自己的第一台电脑。随着做出来的题目越来越多,计算机专业实训课程上的题目对于我来说变得没有太多难度了。也就算是慢慢的入门了吧。
每年学校大一会进行 ACM 基地招新,当时觉得这应该是我的路,就直接去报名了。当时以为我已经看了很多的资料了,做了很多题目了,入选应该是很简单的事情吧。

落选

好想很多事情都是盛极必衰,就在我觉得自己应该没有什么问题的时候,开始了选拔。
是的,这次选拔我直接没选上,打击其实挺大的。让我一下子好像失去了目标,既然没有选上,那我以后干啥呢?
说起这次落选主要原因有两个:

  • 1 由于我大学之前并没有学过计算机,也没有接触过C语言,而这次考核出的题目全部都是C的特性,并非C++;
  • 2 后面几个考智商的题目也确实是没有做好,记得有一一个倒水问题,还有一个路灯过路问题;
  • 3 最后一个讲故事的题目,也没有讲好;

总之就是选拔落选,我失去了全部的动力。于是接下来的一个学期,我基本都在游戏中度过。像是一个出家人人样,从此不问世事,每天只是疯狂的玩游戏,什么专业课,什么计算机语言,全部不去,只是不停的玩游戏。这基本就是我整个大一的生活。

今日一战将就决定今后五百年历史

大一暑假结束(大一暑假有去到深圳做暑假工,有一番人生经历)之后,回到学校,希望开始继续努力学习,发现玩游戏还是有点对不起自己的青春。
适逢大二开学,ACM 再次招新,同期的大二大一学生都可以报名参加,只需要提交申请书即可。我不知道为何,好想又看到了希望,再一次开始了准备,开始在寝室不停的训练,做题。
记得当时在临近选拔之前,我当时还发了一条QQ空间说说(哈哈哈)

今日一战将就决定今后五百年历史

现在来看也确实,这一次选拔,直接是上机做题选拔,我记得我一共提交正确了7道题目,当时参与选拔的人员中,排名第3名。而这一次一共招新大概是10人。
所以我终于成功的入选了,开始了ACM基地的生活。
唯一觉得不一样的是,电脑搬去了实训基地,寝室不在有电脑,每天晚上回寝室的时候,室友玩游戏,只能干看着。每天上下课之后,室友则是直接回寝室,而我则是直接回到基地,开始不停的做题目训练(当然偶尔也会玩游戏)。
好像一些都变得有序起来,自己的编程能力,也开始不断的提升,和其他的同学开始拉开所谓的差距。
期间也开始被要去参加一些所谓的比赛,但是由于我们是后来大二才进来,和从大一就进来训练一年的同学还是有一些差距,成绩一直不是很好。
最好的成绩只拿到了校级比赛(也就是省赛的参赛资格赛)的一等奖。但是我记得好像之后特等奖才有资格去参见省ACM比赛。
虽说没有取得太多的成绩,但是也经历很多次连续5个小时的ACM比赛,看着别人的气球越来越多,而自己的提交不停的出现wrong answer的情景。那种作为一个ACMer,对于accepted的期盼,我想大家都是一样的。期间在 北大onlinejudge/杭电onlinejudge 刷题的感受,也是只有自己知道。

转战项目基地

由于对于ACM比赛的成绩不是很理想,同时学校成立项目基地,于是与同学考虑开始转入项目基地,开始从事Java项目的开发。当时与朋友一起使用Java开发了一个管理系统。
当时我们以为自己东西很垃圾,后来才知道其实我们的项目在同批的人中,已经超越他们很多了。
进入项目基地之后,就开始将学习的重心放在了项目的开发中,包括java/javaee/mysql/ssh等技术。在同学还在学习java语言的时候,我们已经开始接触到相对完成的技术链开始完整的开发项目。
当时在项目基地里面做过的最大的项目应该就是 在线考试系统。由一个完全没有任何完整开发经验的学生,不停的探索各种需要的知识,然后完完整整的上线,并投入使用。我想作为一个计算机专业的学生,算是合格吧。
当时在项目基地,为了赶项目,追进度,工作通宵达旦,我想我可能再也没有当时那样的激情了。其实现在的我挺怀念那时候的我们的,为了同一件事情,真的可以做任何事情。

就这样,我在项目基地,度过了最后大学时光,直到毕业前一个月才从基地里面搬出来。

说点别的

其实有时候相对于别的同学,我的大学生活好像大部分时候都是在学校的实训基地或者项目基地中度过的,大多数时间都是和计算机打交道。对于人们所说的欢乐的大学生活,有时候并没有体验到多少,更多的是给自己一种无形的压力,让自己不得不去奔跑。
有时候好像就是自己在骗自己,有时候又好像自己真的在为了什么而努力。唯一带来的好处就是在大学毕业的时候,我从来没有担心过自己关于找工作的事情,因为毕竟自己在学校的专业成绩还算不错。

到现在,曾经的那些都已经过去了,而我还活着,还要继续往前。

说到最后,想对曾经的自己说一句:

感谢曾经那么努力的你,让我现在看起来还不错。