系列文章分为六部分,本文为第五部分。欢迎关注作者了解相关资讯。
这篇文章咕了很久,不过现在有时间,可以谈谈这个问题。俗话说,好的开始就是成功的一半。但如何入门还是有一些门道的。如果入门方式不正确,就会事倍功半。
特别说明:本文章带有私货,但依然包含了很值得参考的干货。
自学是学习各种东西的重要方式。当然这边需要明确一下“自学”的定义:仅仅自己阅读图书,或者看一些视频,刷点题,几乎不与他人进行交流的形式。
信息学竞赛(算法竞赛)当然可以自学,但自学几乎仅适合高中生或者大学生群体。对于小学生或者初中生,除非是天赋秉异的神童,自学几乎是非常困难的事情。因为,可能会出现这样的情况:
不知道学什么。你可能根据他人的推荐,买了一些图书,看了一些视频。但是可能并不清楚,为什么这些资源是好的。无论是图书还是视频,数量很多,但良莠不齐。有些劣质教材可能还会误人子弟(例子: kkksc03:《CCF中学生计算机程序设计》错误集合 )。当然,你可能会选择比较好的教材,例如《深入浅出程序设计竞赛》系列,但内容也不少,哪些是必须读完的重点,哪些选读的可以稍微放一放,仍然需要得到明确。
数理逻辑能力有限。毕竟初中生小学生的数理能力和逻辑是有限的,普遍不如高中生或者大学生。一方面是课内数学的知识积累——四则运算、统计、式子推导、log 与幂等等信息学竞赛中必的数学能力还不够,另一方面对于形状、分类、变换等逻辑问题也不是非常熟练。许多教材本身并不是针对这个年龄段的孩子编写的(即使有,那么深度肯定不够,这个是一对矛盾)。因此,在自学的过程中会遇到很大的阻碍。
有问题无法得到及时解决。自学的问题在于,你大概率会遇到各种问题(环境配置、写程序出错、书上无法理解的地方),但如果不能及时解决问题,那么学习的效率也比较低下。当然可以咨询自己认识的人(比如学校信息技术老师、懂编程的亲戚朋友同学等),他们可能可以解答部分问题,但由于并不是专业的选手,很多问题也不一定得到准确的回应。你也可以咨询信息学竞赛交流群的群友或者在洛谷发帖讨论,但网友也没有义务解决你的问题。这种孤立无援的状况也容易让人打退堂鼓。
进度不稳定且容易松懈。在自学的过程中,只有你自己可以为自己负责(当然家长可能也会很急,会给你定可能不切合实际的目标)。比较难把握合适的学习进度——一口气看书的很多章,但不写练习,或者是花了好几周去完成一个单元的练习却没有太大的进步。这就导致了似乎付出了很多努力,却无法评估自己的努力是否是有效的。考完 CSP J/S,拿着惨淡的第一轮成绩问:为什么学了成绩还是这么一点呢?
这些问题,不少高中生大学生还是有一些方式去克服的(毕竟数理的底子不差,而且也培养了足够的自学能力,也可以找到解决问题的途径)。但对于学习能力有限的小学生初中生,自学并不是一种非常高效的学习方式。因此,这个年级的孩子,如果有合适的外力引导,会有事半功倍的效果。这需要家长的支持。
最经典也是目前最主流的学习方式,就是进入信息学竞赛强校进行训练。一般来说就是在学校中,通过一些选拔措施,从小学或者初中开始,进行学习。虽然很多情况下入门课讲课就是老师念课件,到更深一点的程度就是让学生刷题,高密度的进行模拟比赛,到了高阶就是学长带后辈。
虽然不是所有的学校都拥有非常科学的训练体系,但胜在足够浸润——每周都会花上几个半天的时间去听课、做题、比赛,甚至会协调文化课的精力(比如部分自习可以不用进行,而是去机房去学信息学竞赛)。而且有问题可以最为快速的解决。在学校这种带有强制力和同龄人压力的环境下,自然就会有意识或者无意识的竞争,带动学习和练习过程。
当然这种方式也会存在一些问题。最重要的一点是,这种训练方式有一些淘汰性。一些同学可能领悟的速度会慢一些,但真正有实力的强校,还是以筛选机制为主,许多人入门,但使用了难度比较大的方式进行学习培训和考核,将跟不上的同学淘汰。这对于学校来说是非常正常的机制,但有一些残酷,对于被淘汰的学生来说就是生涯的终结。
当然,阻碍很多同学进入学校学习的原因还是提供这些训练的学校不是很多。有的城市没有什么学校正儿八经的进行信息学竞赛的训练,而有的城市虽然有这样的学校,但因为各种政策进不去。有天赋的学生却无法得到专业的训练,确实是令人遗憾的事情。
还有一些方式,就是各类培训机构。少儿编程市场是不小的,信息学竞赛和少儿编程是有一定的关系(但并不是包含与被包含的关系),许多机构都有提供了信息学竞赛入门基础的课程,这个门槛并不是很高。当然洛谷也是提供信息学竞赛的机构,出于利益相关的原因,我们不好对其他具体机构进行评价。毕竟机构是拿钱办事的,自然不会有筛选淘汰的问题,而且也有提供一定的答疑指导。但有些机构可能会存在一些这样的问题(请不要对号入座),供家长比较甄别。
专业性的问题。很多机构拥有长长的课程体系图,从图形化编程、机器人、Python、C++ 一直教到信息学竞赛,甚至信息学竞赛还有省选 NOI 难度的课程。他们会声称自己的课程体系多么的完善。但实际上图形化等和信息学竞赛关系不太大,对指导者的要求也有很大的差别。如果信息学竞赛讲师指导者没有算法竞赛的训练经历和获奖,即使是名校的计算机专业的学生,也很难体会到算法竞赛的学习训练重点或者是可能遇到的坑点。
某机构的课程体系,融合了scratch、python和信息学竞赛
课程内容的问题。其实也算是专业性的问题。一些机构可能会使用比较古老的教材,甚至是自编讲义进行教学。当然这不是什么问题。但有的教材可能不一定全面,而且可能有一些没有修正的错误,水平一般的老师不一定可以做出甄选和补充,无法适应现代的信息学竞赛体系。虽然基础算法的知识点就那么多,但是考察的思维和工具的更新换代还是会有所变化。
训练强度的问题。布置作业、答疑辅导和讲评作业是一键苦差事。因此许多机构直接忽略了这一个重要步骤。有的机构虽然提供在线题库,但题库数量有限,题面或者测试数据不严谨甚至有错。同学们上完课后就过去了,没有经过更多的练习,或者布置了但从来不验收。因此,没有经过足够数量和难度的刷题课后练习,基础就无法巩固,学了就相当于没学。
费用问题。对于很多家长来说,这也许不太是个问题,但有的机构真的很贵,可能需要花费数万元的费用。如果因为各种原因学不了,退费也是大问题。
某信息学竞赛培训机构退费难
当然这里不是说其他机构不行,肯定也有不少良心的机构。这里只是提供了一些判断的标准,家长选择机构时可以多加留意。
使用洛谷进行信息学竞赛的入门是非常合适的。洛谷题库经过了十年的历史积淀,截止到2022年已经有约8000的题目数量,满足各种难度、算法话题的刷题需求。
对于入门选手,可以选择“入门与面试”题库,可以找到各种基础的语言入门题目。在2022年暑假起洛谷还积累了语言月赛——不仅考察了编程语言的掌握程度,还考查了算法竞赛的一些基本思维,对于夯实基础有很大的作用。
洛谷“入门与面试”题库
此外,洛谷在2020年出版了《深入浅出程序设计竞赛基础篇》教材,在两年内就印刷了5次,销量超过2万,成为了广受认可的经典教材。而且《基础篇》的前言,对如何自学算法竞赛做了相当详细的指导(如何读书写题、练习巩固),非常适合自我驱动性选手。
洛谷也提供活跃的用户交流群和讨论区,提出自己的疑问,也有可能有热心网友解答(当然网友们并没有这个义务,如果你的问题没有人回答也是很正常的)。
洛谷的讨论区
以上洛谷提供的资源是免费或者低价的(图书价格几十元,也就是两天饭钱),对于自学能力强的同学,完全可以开始借助以上的资源进行自学。不过,和之前说的那样,对于自学能力一般的同学,即使是借助洛谷优秀的资源,也会遇到一些问题。如果选择洛谷的入门计划和基础计划来学习,可以起到事半功倍的效果。
洛谷的入门计划和基础计划是适用于小学初中生的信息学竞赛入门课程,包括课堂讲授与实验、课后练习答疑解惑与监督与评估环节,帮助同学更好的学习。
“计划”之所以叫做“计划”,说明它并不只是一个课程,而是一个全套的学习方案。多种学习形式有机结合,帮助学生更好的巩固基础。
授课:计划课程使用的是全新洛谷交互学习系统,课程由洛谷站长 kkksc03 监制。同学需要在指定的时间上课,学习知识点,并完成在线编程任务。课程采用双师课堂的模式,由资深助教在指定时间带领同学学习,统一进度。同学必须在课堂中亲自编写程序,助教课上语音直播,在同学编程的过程中给予指导和协助。
洛谷交互学习系统
作业:每次授课结束后都会布置合适的作业。作业包括必做作业(课堂讲过的例题和简单的变式题),以及选做作业(难度较大,需要学员挑战,不强求完成)。作业完成情况会公式,激发学生的竞争斗志。
比赛:计划提供期末考试,用于评估学生的学习效果;此外2022年8月起,洛谷每个月举行语言月赛,供学生进行阶段性的测试,并查缺补漏。
洛谷的语言月赛
答疑:在指定的授课时间,同学可在交互系统上直接向助教提问,助教将通过语音解答;而在课后同学们如果有问题,可以随时在QQ群中提问或助教将在 24 小时内解答。由于我们的助教都是名校现役或者退役选手,无法做到随叫随到,可能无法非常及时的答疑,这点请大家理解。除此之外,还提供家长交流群,供通知学习情况,也可以相互交流经验。
洛谷计划课程由洛谷站长kkksc03监制,紧扣NOI大纲和历史考点,并结合洛谷题库10年历史的积淀,精心准备了这套课程。计划运行一年来,仍然会根据学员的反馈进行调整改进。
洛谷的入门和基础计划运营了数十期课程,获得了广泛的赞誉。但费用却相比于很多机构有了很大的优惠——学习一期课程仅需要一两千元。这不是慈善,但把合适的课程推荐给合适的同学,是非常符合商业逻辑的事情。
关于洛谷的入门计划和基础计划的详细信息(课程大纲、内容、时间、形式、费用),可以在这边看到:
至此,您也应该看出来这是一篇软文了。但聪明的读者还是可以归纳出,入门信息学竞赛的必要的协助就是好的师资教材和课程体系,以及足够的练习机会。对于学生来说,最重要的就是百分之一的灵感加上百分之九十九的汗水。在信息学竞赛学习道路上,无论是选择自学,还是选择一些机构上课,还是进入学校训练,这些因素都是需要考虑的,这也是本文提供的干货部分。
以上就是信息学竞赛的入门途径了。至于那种方式适合学生,没有固定的答案。适合学生的,才是最好的,这个可以家长和学生共同商量进行权衡。
我是洛谷站长 kkksc03。有超过 10 年的信息学学习和教学经验。这里是我的和信息学竞赛相关的文章,虽然难免夹带私货,但也确实包含了更多干货,内容非常认真编写且具有诚意。欢迎大家取用。如果对信息学竞赛等领域有个性化的问题,欢迎付费咨询。