零基础学习信奥如何进行科学规划

发布时间 2023-12-17 10:32:52作者: 陆留生信奥艺术

我自己与信奥、与编程有着很深的缘分,无论是从我家孩子读书时的竞赛经历(曾经的信奥选手)还是我曾经的工作背景(之前一直在教育系统从事信息学工作),到现在自己在一线执教,管理教育教学团队,总结出一些信奥学习的基本规律。

 #1信奥学习进阶路线

 从零基础到高水平选手的学习历程,会经过三个阶段:学语言阶段,打基础阶段和竞赛阶段;在竞赛阶段中,又分为三个层面:专题知识层面、套路层面和模考层面。

 

学语言阶段

信奥学习首先要掌握基本的编程语言,编程语言是我们与计算机沟通、指挥计算机做事的语言。

 通常我们所说的python和C++,都是编程语言。在信奥中以C++语言为主,主要原因是C++效率较高。

 在这个阶段,不会涉及太多的算法或数据结构等比较难的知识点,更多的是学会与计算机进行交流和沟通。

 语言阶段过后,学生将进展到打基础阶段。

 打基础阶段

基于语言学习,打基础阶段将涉及到递归、递推、深度搜索、广度搜索等计算机科学中比较核心的知识点。熟练掌握这个阶段的知识后,学生对于任何一个题目,都可以用暴力搜索算法来解决。

 但打基础时依旧没有触及真正的竞赛层面,这个阶段过后学生才到达真正的竞赛阶段。

 竞赛阶段

 竞赛阶段并非指学生可以参加竞赛,而是指学生开始学习竞赛专题。

 在竞赛阶段的学习中,分为三个层面:基础知识点,套路和模考。

 A 基础知识点

 在竞赛阶段,首先要掌握基础知识点。学生可以通过专题学习获取知识点,再尝试经典题目,这些经典题目能够反过来帮助学生巩固加深对知识点的认识。

 这个阶段大多数学生仅仅停留在“做一题会一题”,即知道做过的题或老师讲过的题的解题方式,但对于到全新的题目或者变形题无从下手。

 所以在学习基本知识点后,学生需要了解知识点在题目中如何“被使用”,也就是学习知识点衍生出的套路。

 B 掌握套路

 学习算法套路通常有两种方式:第一种就是大量刷题,在日常练习中总结归纳;第二种是经验丰富的老师会为学生整理知识点常用套路,并会搭配相关练习,保障学生掌握这些套路,同时积累实践使用经验。

 在拥有解题实践经历后,学生依旧不适合参加竞赛。因为到目前为止,学生在进行练习时处于放松的、日常的、没有时间限制的环境下,而竞赛考场上的氛围与日常学习氛围截然不同。

 许多日常表现很好的学生参加竞赛时,经常会心态不稳,发挥失常。所以最后一个阶段——模考练习,对于信奥选手来说是至关重要的一环。

 C 模考练习

 学生在基本掌握算法套路后大量参加模考,对于参赛经验和解题策略,都将会有大幅度的成长。

 首先,参加模考前,需要选择与接下来所要参加的竞赛有一定相关性的模考。比如学生参加9月的CSP测试,可以在前几个月进行CSP模拟考试。

 在学到一定水平,学生可以开始尝试比自己当前水平高一个难度等级的模考,来进一步拓宽视野,提升能力,并且在考后留出充足的反思、总结和订正的空间。

 在考后总结时,我们需要注意以下几个方面:

第一,是否有遗漏的知识点,这点是比较直观的、知识储备方面的欠缺。在学生基本掌握常见套路和基本知识点后,需要大量模考以考代练,提升自身水平。

 以考代练

许多模考的出题人是退役或在役的信奥选手,选手在出题时,会有意避开别人出过的题目,思考一些思路更加巧妙的题目;同时也会选择当下比较流行的套路。

 学生在考试压力下接触到高质量的模考题目,能够让学生提升应考水平,学会新的技巧,吸收新的知识点和套路。

 第二,对于一些知识点,有思路但操作过程中出现错误/写代码的速度不够快。这种情况根本原因是练习不够多,肌肉记忆不熟练。

 一道题目其他选手20分钟可以写完一个算法,可以迅速将时间和精力投入到下一道题目中;但不够熟练的学生可能要用一个小时,如果在写完后无法调试正确,甚至需要花一个半小时。

 在3-4个小时的高压竞赛中,选手需要尽可能节省脑力消耗,在熟练肌肉记忆的情况下节省的精力,可以运用到难题或者没有见过的套路中。

 第三,在考试中出现策略问题,最常见的是在考试开始立刻打代码。在没有想清楚的时候敲键盘,写到一半发现思路错误,或者这个方法不够快,不仅浪费时间,还会影响心态。

 所以,在比赛中考生必须先阅读题目,在草稿纸上做好分析工作,手算测试样例,观察题目性质,为后续实现算法降低犯错几率,节省精力。

 #2知识点与套路水平阶段

 

信奥选手学到不同阶段,知识点与套路需要达到不同水平,我将信奥知识点和套路掌握水平分为以下六个层面:

 六个层面从浅到深层层递进。最基础的层面是掌握语法和词法,在此之上才能做到学习理解经典算法的思想和代码

 这时学生已经掌握基本知识点,但不能灵活运用,所以继续深入学习需要培养修改、定制、实现算法的能力。

 “在竞赛阶段中的A节点——基础知识点时期,需要培养前三个层面的能力,尤其是基础语法词法和经典算法,打好基础。

 设计新算法观察、分析、推导题目条件两个层面相互影响彼此催化:学生只有在学会观察、分析、推导题目才能正确设计新算法,但没有设计新算法的能力,仅仅观察题目也没有意义。 “

在B阶段——掌握套路时期,需要拥有定制算法和设计新算法的能力,并有基础的观察题目的能力。在遇到一道新题,学会如何套用、化用、修改经典算法。

 信奥和数学物理等其他理工类学科一样,“灵感”是处于金字塔尖的能力之一。

 面对一道难题,信奥大神灵感迸发想到正确的算法,并不是因为他比别人更聪明,而是因为他经过成百上千道题目的洗礼,经过科学整理总结,过往的经验和培养的能力让他再面对新的题目时,思维快速产生联想,将新题与曾经的题目进行连接,从而找到新思路。

 当然如果前面的基础没有没有打好,后面的能力培养与灵感构建也无从说起。

 #3暑假的重要性

 暑假在信奥学习中时非常重要的一个时间段。

 春秋学期学生的大部分精力都在文化课上,只有每周几个小时的零散时间学习信奥。但信奥是一个需要完整的时间和足够的精力,心无旁骛专注学习的学科,所以暑假对于信奥生来说,是唯一一段完整的信奥学习时间。

 并且对于秋季参加CSP和NOIP竞赛的学生,暑假更是快速提高能力,实现进阶的重要时间点。

 在暑假各个强校及机构也会安排集训课程,信奥生们共同学习,遇到问题一起讨论解决,在设计合理的课程安排和良性竞争的氛围中,学生会更有动力探索钻研。

 如果暑假信奥生能做到高效学习,那么要比平时学习一年甚至一年半的收获还要多。