一、简介
信息学奥赛是面向青少年的一种智力游戏,和数学物理化学生物一样,是联合国教科文组织的五大科国际赛事。最顶尖的赛事叫国际信息学奥林匹克竞赛,俗称IOI,相对应的我国赛事叫做NOI。而目前我们最常见的最直接的赛事是全国信息学奥林匹克竞赛分区联赛NOIP。一般每年10月中初赛,11月中决赛, 拿到NOI二等奖的学生能获得所有大家的强基计划入围资格的,进国家队直接保送清北。
一般的培训分成三个阶段:
第一阶段,程序设计基础,大约花10次课,主要内容:
1、 c++快速入门:程序结构,输入输出,变量,表达式,顺序,选择,循环三种结构
2、 数组和字符串:大量数据处理技术
3、 函数:结构化程序设计的主要工具
其中难点主要在多重循环,递归函数等,让大家都能学习到编程,只能说可以编出程序,看得懂别人的程序。这段时间最好是连续的上课,希望大家克服一下,因为前面的没有听懂后面的就跟不上,连贯性很强。
第二阶段,程序思想阶段,C++入门后,我们就狂做题,训练程序思想,因为一般的小孩子数学思想还可以,但是基本没有接触到程序,简单的说,数学思想是你会做题,程序思想是你得讲清楚去让别人做题,这个区别还是很大的。这个时候很多程序设计的思想不断的被重复,争取形成条件反射。这个时间我目前设计的是10-20次课,80道题左右。若偶有学生缺课,影响不太大,知识连贯性不太强,主要训练能力。可以看看我后面的训练题。
第三阶段:数据结构和算法阶段,学生有了程序思想,做题还比较顺利后我们讲常见的通用算法和数据结构,这里估计要30-40次课,一般学生要是能认真学完这个,国一基本问题就不大;