【七中第二课堂】【七中第二课堂】信息学奥赛(NOI)入门指南(新家长必读)

网友投稿 2018-12-09 20:54

信息学奥林匹克竞赛(NOI)是中学阶段最重要的五大学科竞赛之一,每年11月是省级联赛(NOIP),所以每年寒假开始,总会有新人开始进入这一竞赛领域。新入门(坑)的同学和家长,可能刚接触这一赛事,有些问题还不是特别清楚,所以我们在此做一点科普,供新入门和准备入门的同学和家长参考,如有讹误敬请指正。

https://cdn.china-scratch.com/timg/181211/2054161951-0.gif

1.  为什么要学竞赛、打竞赛?

中学阶段的学习目标离不开高考(当然出国党例外),通过高考进入一所好的大学有哪些途径呢?

第一个途径是高考分。考多少分决定了你能进哪个档次的大学。北大清华等一类名牌院校的学生大部分来自全国一流的高中,如果没进入这些一流的高中,想进入一流的大学难度跟成为全国首富差不多。所以,要想一想,你高考到底能考出多少分,就知道你能上什么样的大学了。当然特例年年有,但哪年都不太多。

第二个途径是自主招生。自主招生初审的前提条件是需要有竞赛的奖项,或有发明专利、学术论文等,当然成绩在省级示范高中的前5%也可以。竞赛奖项主要是指五大学科竞赛。初审之后通过测试可以拿到10分—一本线的降分优惠。也就是说,如果你的成绩正好能去东北大学,但自招你拿了60分降分,就可以去上海交大了。自主招生广义还包括各大学的学科营,高一就开始签降分的协议了。

第三个途径,有人说可以找关系,这个我不太清楚,暂略,谁有案例可以补充。

为什么学竞赛、打竞赛?就为这个。长远的益处就不说了,说了你也不一定在意。

2.  为什么要学信息学奥赛(NOI)?

并不是在五大学科里只有信息学竞赛最好。比较而言,信息学奥赛有自己的特点。

首先,信息学竞赛学习的内容是计算机编程,和文化课关联不大,所以可以随时开始学习,并不要求其他学科一定要学到什么程度。所以,小学开始学习的有,初中开始的有,高中开始的也有。有的学生初中就拿了高中组的一等奖,小学就拿了初中组的一等奖。其他学科就不行了,高中竞赛必须学完高中本学科的必修课程才能开始学习竞赛,所以一般来说,其他学科竞赛的首次参赛一般在高二。

其次,竞争压力略小于其他学科。比如数学,作为考试科目和竞赛科目,参加的人数非常多,高手云集。而信息学竞赛因为是非考试科目,参加学习和参赛的人数比较少,较容易脱颖而出。当然并不是说这个学科内容肤浅,其实内容也很深。

总结一下:参加信息学竞赛学习开始早,首次参赛早,可参赛次数多,竞争压力略小,这是它的优势。获奖之后的益处请复习第一条内容。所以,学信息学奥赛是不是挺好?

3.  零基础能学吗?

   一个新的学科肯定是从零基础开始学习的。能不能学编程,要看学生是否对编程感兴趣,是否有比较好的数学思维和逻辑思维,是否有足够的业余时间持续参加学习和刷题。如果这些条件都可以,能学。

    但具体到个人,需要通过学习观察,才知道他能学到什么程度。不通过一个阶段的学习是无从判断的。

4. 怎么选择培训课程?

目前培训的方式比较多,看你适合哪一种培训。

首先,是短期培训。短期培训有的是基础语言的短期培训,有的是提高阶段的短期培训。短期培训通常是在较短时间内讲授大量的知识点。比如几天讲完C语言,几天讲完基础算法等等。

  对于短期培训的选择,要看自己的情况和课程内容。实际上信息学是一个注重实践的学科竞赛,也就是不论你知道多少知识点,重要的是你能够在代码中熟练应用这些知识。而很多知识点是需要一定量的练习来消化的。短时间讲授大量知识点的结果很多都是没有形成相应的实践能力(夹生)。当然高端的短期讲座如果内容适合,还是有一定效果的。但初级课程必须一步一个脚印,不能急于求成。

其次,NOI竞赛的学习要有至少2年的规划。很多家长听说10天的学习就能参赛获奖都很兴奋,以为找到了性价比超高的课程。大家可以去了解一下历年的获奖者就知道了,大部分同学的学习和参赛过程都超过两年。当然不以参赛为目的学习另论。

总结一下:如果想走竞赛这条路,就不要试图速成,钢铁是怎样炼成的你又不是不知道。所以,培训课程的选择重要的是“靠谱”。

https://cdn.china-scratch.com/timg/181211/2054161415-1.gif

5. NOI竞赛的编程和大学课程及就业培训的编程有什么区别?

简单的说,就是NOI编程的宽度比大学课程和就业培训窄,但深度要甩他们一箭地(一箭地多远脑补一下)。也就是说,不是专业从事NOI研究和教育的人基本都解决不了NOI竞赛的题目,不是说他们能力不够,而是因为他们并不研究这个领域。就业培训的目标是做实用程序开发,也是相对简单。NOI编程主要针对数学和逻辑问题,向深度挖掘。

总结一下:他们会的多,竞赛学生玩得比他们难。打个比方,他们是铺路,我们是挖井。

6. 什么样的学生不适合学习NOI竞赛?

如果抛开竞赛,编程谁都可以学。但是一说到竞赛,肯定对学生有一定要求,每个学生的智力、能力都不同。啥样的学生不建议学竞赛呢?

首先,文化课成绩不太好,课外时间都用来补文化课了,不建议学。因为竞赛的初衷是让学有余力的学生拓展学习领域,如果文化课都力不从心,就可以说是学无余力;另外,自主招生最后还要过测试这一关,文化课不行容易被刷掉。

其次,数学和逻辑思维不好的同学不建议学。这个需要观察评价。

再次,对编程不感兴趣的同学不建议学。不感兴趣就很难下功夫,很难出成绩。

7. 小学生可以学信息学奥赛吗?

可以学,但要看年龄和学习内容。信息学奥赛分小学组、普及组和提高组。辽宁不承办小学组,所以不管你几年级都是从普及组(初中组)开始打。

信息学奥赛参赛语言C++比较主流,此外也可以选C、PASCAL、JAVA等。这些编程语言如果年龄太小,在有些问题的理解和使用上会有些困难。所以,我们建议5年级以下的学生可以从可视化编程语言开始学习,比如SCRATCH,先通过这些比较直观有趣的编程语言学习编程的基本思想。5年级以上,最好6年级以上开始学习C++,这样对相对复杂的数学和逻辑问题能理解得相对顺利一点,编程的操作能力也更强一点。当然也有少数5年级以下的学生也能学好C++.

8.  只有高中获奖才对自主招生有效,为什么初中就开始学?

高中三年中的竞赛成绩在自主招生中有效,高中之前的获奖无效。但是,对于难度比较高的学科竞赛而言,可能至少需要两次以上的竞赛才能获得好成绩。一般来说,初一开始学习,初二初次参赛如果获得普及组一等奖,则次年初三参加提高组竞赛,可能获得二等奖,少数可以获得一等奖。这样高一第一年就比较有把握获得提高组一等奖。高一就有机会参加国赛。提前学习提前参赛的目的都是为了在高中阶段尽早获得一等奖并且有机会参加国赛。

如果初三(育才)分流后开始,是NOI竞赛学习最后的一个黄金时间。状况好的话,基本可以在高一获得提高二等,个别可以获得提高一等。这样高一下学期可以参加省选和国赛,或者在第二次参赛中拿到省级一等奖。

如果从暑假开始或者高一开始学习,当年基本参加不了竞赛或拿不到什么成绩。

9. NOI竞赛课程得学多少课时?

    这是很多初学家长经常问的问题。之所以这样问,是因为大家对竞赛的内容构成不是很了解。

   NOI竞赛分省级联赛(NOIP)和国赛(NOIP)两个级别,当然还有国际竞赛,我们在这不介绍。省级联赛分小学组、普及组和提高组,有些省份不举办小学组竞赛(比如辽宁),竞赛虽然分组,但不必按选手的年级参赛,可以跨组别参赛。

NOI竞赛主要考察的是算法和数据结构,当然不是考察概念,而是考察能运用算法和数据结构知识进行编程的能力。C++作为基础语言,只是编程的一个工具。这样说我们就清楚了,NOI竞赛课程的内容包含基础语言和算法及数据结构两大部分,主要是后一部分。对应你的参赛级别,学习内容的范围不同,题目的难度不同。

至于学时并不好确定。因为这个课程不是了解知识和概念就可以了,而是需要能够实际编写程序解决问题,这个过程每个学生的差异都很大。

一般来说,C++基础语言要15-20课时,快的也有10个课时完成的,慢的也有30个课时完成的。算法和数据结构是一个较庞大的体系,可以多学也可以少学,主要看目标。目标是省一,学习基础算法就可以,但需要能够熟练应用。目标是省选和国赛,则需要学习中高级算法,也要根据学生情况确定学多少。

所以,对于竞赛我们建议根据目标规划,是一年的规划还是两年的规划。不要试图通过突击一个月就获奖,那不是竞赛,是神话。 

10.  怎样才能学好信息学奥赛?

首先,信息学竞赛对学生来说是一个新的领域,每一个知识都是新的。所以,竞赛学习要持之以恒,不能断断续续。三天打鱼两天晒网,就需要不断复习旧的内容,进度会比较缓慢。所以,持续的意义要远大于突击;

其次,信息学竞赛注重实际操作,学过的知识都是用来指导编程的。竞赛的主要是用程序解决数学问题或逻辑问题或两者都有,所以学是一方面,实际写题更重要,我们叫做“刷题”(其他科竞赛也得刷题,只不过信息学用电脑刷题)。

总结一下,学好信息学竞赛的公式是:持续学习+刷题。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com