UsacoGate解题报告 --- 序曲

由于充分意识到自己在算法方面的惨不忍睹,然后又觉得自己学了这么多年计算机却可能连些高中生都比不过,决定奋发图强
我觉得我现在的状态是,知道自己的差距在哪,也大概知道该如何提高,剩下的就是努力去完成它了。
执行力永远是很难的那么一件东西,但仍旧不能放弃

原本在研一刚开学的时候就制定了学习算法的目标,结果学期快要结束了,也没见开始。
考完试离回家正好有段时间,可以好好地完成它了

我觉得计算机系的学生大都没有做题的意识,好象题目总是学数学的人做的
正如不做题没法学好数学一样,我觉得做一些算法题对学习计算机是很有帮助的

原本准备做北大OJ上的ACM的题目
但看到网上说UsacoGate分类齐全,有相应的提示,比较适合初学者,终于于2007年1月15号下定决心
新年新气象!终该有新的进步才行

先简要介绍一下UsacoGate
UsacoGate 是全美计算机奥林匹克竞赛(USACO)的一个训练网站,要参加 USACO 就必须参加 UsacoGate 的训练。
很多人认为竞赛只不过是获得奖金、赢取名声、进入好大学的手段罢了,枯燥而无任何实际意义。要注意,信息学的竞赛可不是这样的,这里的题目不仅有新意,而且会让你得到极好的煅炼。而且,你会发现这些题其实挺有趣的
我一直认为计算机的水平不像其他学科一样容易得到衡量,但从这点来看,还是有很大的区分度的。程序员一个很大的通病在于,自认为了不起,以为掌握了N多工具N多控件然后就高人一等。其实只要和真正的高手一比,便知道自己简直是井底之蛙
可惜自己错过了参加OI和ACM类似比赛的机会,也只能靠自己多多少少补上一些算一些了

做题特别是UsacoGate上的题的好处如下:
1.给你提供实践的机会。很多人学编程的人都会问,我是自学,也不在公司,那么到哪实践。很简单,做题就是了。在这里做题比在公司编程得到的煅炼要多得多,因为题目本身难,而且重复性少,不至于觉得枯燥无味
2.UsacoGate的难度由浅入深,不至于一开始就把你吓着让你遑恐地退出。慢慢会发现越来越有挑战性。另外,这会强迫你看书,因为你不会,只能到书中去寻找答案了。这要比成天捧着本大部头而不知所云好得多。我向来强调方向多过于盲目的努力。足够努力的人是值得尊敬的,但若走错了路子,便不免觉得可惜。
3.必须做完一个小节的题目才能做下一节。这样可以让你扎扎实实地打好基础,不至于好高骛远。另外,这种类似于挑战赛的模式很有趣,会让你一发不可收拾,总想着能够提交成功。是不是有点像游戏呢?很好,以游戏的心态学习,我认为是最好的学习方式。你好好想想,要是学习学上了瘾,那该是多好的一件事情
4.要是你提交成功了就可以看到相应的分析和答案。这样一让你不至于偷懒,可以让你好好地去思考这个问题。二,通过与答案的比较,可以很容易地发现自己的不足,从而改正
5.有严格的输出要求和时间要求。可以强制你养成正确性和高效率的习惯,不至于把程序编出来就草草了事
6.涉及面广,可以说做上那么一轮下来,你的算法功底已经非常深了。

如此多的好处,不知你是否心动了呢?
当然,真正的好处只有在你深入进去之后才能感受得到
网址是http://ace.delos.com/usacogate,我是开始了我的算法旅程了,你呢? 

展开阅读全文

没有更多推荐了,返回首页