Frank的OIer之路
Posted frankscode
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Frank的OIer之路相关的知识,希望对你有一定的参考价值。
我搞算法竞赛也是比较晚的(相比那些市队大佬而已),我是从高一才开始在二中开始跟王老师学信息竞赛的,那个时候我是一个什么样水平的选手呢?
几乎是零基础,什么都不会。
不过,我唯一有的,也是后来一直支持着我从零开始变成“大佬”(当然不能跟市队的大佬们比啦),就是兴趣。
我认为,如果你想在搞算法竞赛这条路上走的比较远的话,兴趣,即对编程的热爱,是每一个学编程的人必须具备的。因为在学编程的过程中,你会遇到各种各样的困难。比如开始学的时候,一些知识点比如:递归,动态规划,高级数据结构……这种东西刚开始学是非常难的,至少我在当时学的时候遇到了巨大的困难。当时我理解这玩意理解了好半天才搞懂。如果你没有兴趣,那你可能就半途而废了。
那我为什么会对编程那么感兴趣呢?其实在高一开始正式学之前,也有过学习编程的经历,不过大都是自学,而且学的只是那些皮毛的东西。
小学4年级的时候,我爸给我报了一个Pascal的班,这是我第一次接触编程。但是当时我就完全听不懂,什么变量啊,布尔什么的完全无法理解,然后自己写的程序基本是抄旁边同学的。结果当时和我一起学的那些同学,在初中的时候已经可以编非常复杂的程序了。有一次他们还写了一个游戏,是关于什么老师大战学生的,然后他们几个同学就聚在那里乐在其中。而我还是什么都不会,当时我特别羡慕他们。
我七年级的时候就找了一本书开始自学VB,当时我也有点数学基础,终于弄明白了什么是变量,并且自学的时候能听懂视频上的内容了,自己也能写一些简单的if,for语句出来了。我花了数天时间写了一个迷你小游戏,叫士兵大战路人。虽然那个时候我已经会写代码了,但当时接触的都是非常浅层的东西。知道高一的时候我才第一次知道算法这个东西。
这些简单而稀少的if,for语句怎么能组合出有如此复杂功能的程序,就是因为语句是简单的,算法是千变万化的。只有当你开始学算法的时侯,你猜从真正意义上开始深入地,内行地学习写程序。
从高一开始学信息竞赛的,才是我真正意义上系统地跟着一个老师学习写程序。所以那个时候,积蓄已久的对编程的热情在这个时候被激发出来了。上课的时候我一定是非常认真地听课,什么打游戏啊,玩手机啊都是不存在的。因为是学竞赛嘛,老师的讲课速度都是比较快的,但是老师教完一个知识的时候我总是感觉不过瘾,还想学更多的新的东西。老师也很鼓励我们自学,他给我们发了很多电子书,然后我就把它传到学校发的pad上面,上课无聊的时候看。我除了老师给我们的电子书之外,还自己会去网上找书看。当时收藏了很多关于写代码的书。虽然很多都是粗粗地看而且很多地方都看不懂,但是我在其中找到了快乐。有些题目做不出来的时候,就把题目大概记在心里,然后上课无聊的时候拿出来想,课间的时候跟同学讨论思路。我现在想想都不太敢相信,原来这就是我当时学信息干出来的事情。而且信息题目不像其他学科的题目,它是比较有趣的,贴近生活的,这样是为什么我比较喜欢信息的原因之一吧。
当时跟我一起学信息的同学有好多,但学到后来很多人都陆陆续续放弃了,因为有些算法刚开始学的时候确实有难度。我当时也遇到过很多困难,但是我从来没有想过放弃,因为我觉得这就是我喜欢的东西。
这就是我当时学信息的状态,就这么一直学了一年,基本上该会的都会了,勉强可以去上场比赛。
当时比赛的目标也没想过拿一等奖,想着那个二等不错了,就算拿了三等我也能接受。在考场上做题就用最稳妥的办法解决,就是能骗分的骗分,能模拟的模拟,别想着用花里胡哨的算法搞满分。于是莫名其妙就混了个一等奖。
以上是关于Frank的OIer之路的主要内容,如果未能解决你的问题,请参考以下文章