信息学奥赛(NOIP)初赛学习方法推荐

首先声明:本帖针对初学者,本帖只是列出一个大概的框架,不属于自学方法,有条件有能力,请找一位好老师来教,多跟前辈交流经验。(否则多会出现事倍功半的悲剧!)

一、初赛内容

初赛偏重于基础知识。

1. 一部分是计算机的基础知识。

计算机基础部分,内容多而杂,多以选择题形式出现,所以不必要花太多时间去背,而是平时多积累,有意识的去记忆,留下印象。内容会包括计算机的特征(硬件和软件)、网络的特征和基本概念、信息的输入输出、信息的表示和处理、新兴应用等。

2. 另一部分是数学内容

范围很广,永远不知道会考到哪一部分的知识点,但试卷包括两道数学题,所以不能忽视。比较重要的大概包括排列、组合、辗转相除法、容斥原理等。

3. 数据结构

数据结构会考基本类型(整型、长整型、浮点型、字符等)和数组。比较容易在初赛中出现的数据类型有树、栈、队列等。树:二叉树

、完全树等;栈:先进后出特点;队列:先进先出特点。

4. 最后一部分是程序完成(也就是算法)。

这部分完全是靠你的做题基础,没有捷径,只能靠你平时多做题,掌握简单算法。

下面是小编整理的比较常见的实用算法:

1. 模拟算法 2. 贪心方法 3. 数论算法 4. 图论算法

5. 动态规划(分析:背包问题) 6. 分治算法

7. 搜索算法(fx:暴搜—枚举、打表、加剪枝(剪枝以排序、可行性剪枝和暴力剪枝为主。))

更具体的算法总结,还是去买相关算法书籍来看,再有就是多刷题练手。

二、初赛试卷形式

1、选择题:共20题,每题1.5分,共30分。每题有4个备选答案。试题内容包括计算机基本组成与原理、计算机基本操作、信息科技与人类社会发展的关系等等。(普及组为20道单选题,提高组为10道单选题和10道不定项选择题,不定项选择题与答案完全一致才得分,多选或少选均不得分)

2、问题求解题:共2题,每题5分,共10分。试题给出一个叙述较为简单的问题,要求学生对问题进行分析,找到一个合适的算法,并推算出问题的解。答案以字符串方式给出,考生给出的答案与标准答案的字符串相同,则得分;否则不得分。

3、程序阅读理解题:共4题,每题8分,共32分。题目给出一段程序(没有关于程序功能的说明),有时也会给出程序的输入,要求考生通过阅读理解该段程序给出程序的输出。输出以字符串的形式给出,如果与标准答案一致,则得分;否则不得分。

4、程序完善题:共2题,每题14分,共28分。题目给出一段关于程序功能的文字说明,然后给出一段程序代码,在代码中略去了若干个语句并在这些位置给出空格,要求考生根据程序的功能说明和代码的上下文,填出被略去的语句。填对的,则得分;否则不得分

作者:清北OI
链接:https://zhuanlan.zhihu.com/p/62846381
来源:知乎

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

由中国计算机学会(CCF)主办的 2021 全国青少年信息学奥林匹克冬令营(NOI 2021 冬令营)于 2 月 1 日 – 6 日顺利举行。本次冬令营为线上活动,共有来自全国 25 个省市自治区的营员参加

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

经过角逐,最终本次冬令营共有831人获奖,产生金牌 148 名、银牌 267 名、铜牌 416 名。

 

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

NOI 2021 冬令营金牌前八名

点击文末“阅读原文”可查看NOI2021冬令营获奖名单

 

那么上海的营员们表现如何?一起来看下:

 

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

(数据来源于网络,手动整理,仅供参考,如发现错误,欢迎指正)

可以看到获奖学生大多来自市重点高中或者初中名校(民办初中较多)。金牌获得者全部是高中学生,且以高一为主。

 

银牌获得者开始出现初中学生,铜牌名单更是出现了大量初中生,最小的获奖者竟然是预初的学生,实在是厉害!

我们按照学生所在学校情况,整理成下图,供大家参考

注:手动整理,可能会有纰漏,仅供参考

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

说到这,可能有人对NOI冬令营还不太了解,下面我们来简单了解下NOI的相关知识:

全国青少年信息学奥林匹克竞赛冬令营(Winter Camp,简称WC)自1995年起开始举办。

 

每年在寒假期间开展为期一周的培训活动。冬令营共8天,包括授课、讲座、讨论、测试等。


参加冬令营的营员分正式营员和非正式营员。获得NOI前50名的选手和指导教师为正式营员,非正式营员限量自愿报名参加。在冬令营授课的是著名大学的资深教授及已获得国际金牌学生的指导教师。

NoIp:全国青少年信息学奥林匹克联赛,自1995年至2018年已举办24次。每年由中国计算机学会统一组织。

初、高中或其他中等专业学校的学生均可报名参加NOIP联赛。比赛在同一时间、不同地点举办,以各省市为单位,由特派员组织,全国统一大纲、统一试卷,旨在通过竞赛和相关的活动培养和选拔优秀的计算机人才。

全国的竞赛就称为:NOI(National Olympiad in Informatics)—-全国青少年信息学奥林匹克竞赛。

各省市NOIP最后一共会评出600多名一等奖,进入全国赛事的的参加人数一直仅有400来名。各省、自治区、直辖市及特别行政区会派出代表队参赛。

本次冬令营与往届冬令营相比,还肩负着 IOI 2021 国家队选拔的任务。

经过前期的作业、集训及冬令营期间的两次选拔测试和一轮答辩,最终,虞皓翔(宁波市镇海中学)、邓明扬(中国人民大学附属中学)、钱易(宁波市镇海中学)和代晨昕(广州市第二中学)脱颖而出,他们将代表中国参加今年 6 月举行的 IOI 2021。

 

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

IOI 2021 中国队

CCF NOI 2021 上海市队选拔活动在严格做好疫情防控的前提下,于 2021 年 2 月 5 日在华东师大二附中举行。上海市队选拔活动采用机试的考试方式,选手最终成绩由 NOIP 成绩(标准化,占 60%)和上海市队选拔赛机试成绩(标准化,占 40%)加权产生。

 

上海市获得全国总决赛 A、B 类名额共 9 人。依据 CCF 规定,现按照名额数的 200%对上海市组队选拔活动总分前 18 名选手进行公示,名单如下:

 

5金16银33铜!上海共54人获奖!NOI2021冬令营获奖名单公布!多名初中生获奖!

(来源于信奥信息网)

那么在信息学比赛中获奖有什么好处呢?

中考:五大学科竞赛决赛均不面向初中生,但初中生可以参加NOIP,虽然没有资格参加全国决赛,但地区比赛中获奖的含金量显而易见。据说科技特长生,校内保送推荐有加分;对自招也有一定帮助。

高考:强基计划高校降分录取。即获得信息学全国中学生学科奥林匹克竞赛全国决赛二等奖(含)以上成绩的考生。高考成绩达到所在省份本科一批录取最低控制分数线(合并录取批次省份以各省划定分数线为准)可入围相应省份的强基计划考核。

⊙信息来源 | 中国计算机学会网站

学习信息学奥赛,这五大网站别忘了收藏

随着少儿编程市场的火热, 信息学竞赛也被越来越多的老师、家长、学生熟知,我收集了五个最佳的信息学竞赛的学习/刷题网站,现在分享给大家(按顺序了解更佳)。

一、NOI官网

对于程序员来说,学习一门语言最好的网站就是官网。同时对于信奥学子来说,掌握国内信息学趋势,学习信息学最好的网站自然就是NOI官网。

学习信息学奥赛,这五大网站别忘了收藏

除了提供竞赛报名、考试大纲、最新资讯及趋势外,NOI官网也提供了一些在线资源,其中包括在线测评系统(OJ)。

NOI网址:www.noi.cn

二、哔哩哔哩

从NOI官网了解完考试大纲之后,是不是要按照大纲开始学习了呢?

其实已经有很多大佬整理好了课程,正等待你的“食用”,很多老师都将自己的经验分享到了B站,其中不乏一些曾通过信息学竞赛保送到清北的牛人。

学习信息学奥赛,这五大网站别忘了收藏

吉如一保送北大、杜瑜皓保送清华姚班(上篇文章有介绍姚班)

大家直接进入B站搜索:信息学奥赛或NOIP即可。

B站网址:www.bilibili.com

三、洛谷

从B站学成归来,想测试下自己的水平怎么办?

大家可以登录洛谷网站,这里有10万信奥学子与你一同进步,进入洛谷之后,首先来到题单,洛谷已经根据信息学的大纲分好类了,可以循序渐进去刷题。

学习信息学奥赛,这五大网站别忘了收藏

如果你遇到难题,没有思路也不用怕,这里几乎每一题都有很多信奥学子进行解析,供你参考。

如果想考察自己的做题能力,也可以报名参加洛谷的比赛。同时洛谷作为一个社区,你也可以在这里自由讨论,交一些有共同爱好的朋友,约定一起刷题。

洛谷网址:www.luogu.com.cn

四、浙大ZOJ

对于中小学生来说,洛谷的题库其实已经足够了,如果还想提升自己,可以去浙江大学、北京大学、华中科技大学、中科大等OJ系统。这里我仅推一个代表类的网站:ZOJ。

学习信息学奥赛,这五大网站别忘了收藏

在ZOJ刷题,还能锻炼英语能力哦!学习信息学奥赛,这五大网站别忘了收藏

ZOJ网址:zoj.pintia.cn

五、力扣

经过各大OJ的洗刷,大家的能力已经足够了。

如果大家想知道算法的作用,能够解决什么问题,大家可以继续刷力扣,目前大多数国内外高校的大学生都会选择刷力扣,很多企业也会从力扣选题作为企业笔试试题。

学习信息学奥赛,这五大网站别忘了收藏

刷了些力扣的题目,发现力扣对时间及空间复杂度的要求更高,稍不注意就爆了,大家一定要注意哦!

但是对于时间比较紧张的中小学生来说,可以忽略这个网站,对于想提升自己能力的老师来说,倒是不错的选择。

力扣网址:leetcode-cn.com

我,从一个算法菜鸡选手到USACO全球前100的心路历程

 

分享人:西瓜

康奈尔大学计算机在读

USACO竞赛铂金级,排名全球前100

如果大家是抱着一周USACO拿大奖的想法来看的话,我这里没有你想要的东西。所有的学科竞赛都没有捷径,就算你天资聪慧,该走的路还是要走的,只不过比别人可能快一些,但是你该写的几万份代码,该看的几千份博客,其实一个都少不了。抱歉。
 
如果实在想要的话,睡了吧,梦里啥都有
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
01
因为一本搞定信息学竞赛的书而疯狂受挫
首先想分享一下我的学习进度。高一之前我参加了我们高中-成都七中的学科竞赛夏令营,在老师的建议下买了一本大概叫做《一本搞定信息学奥赛》的书,翻了几页,然后就开学了。
高一开学的时候,我可能刚刚看完最基础的for循环,基础的就等于啥都没有。看这几页的时候,我还写了一两个非常简单的1+1加到10这种代码,总的来说还是比较喜欢这种不用自己干活可以偷懒的感觉
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
高一开学之后,我们每周五会有一个兴趣班,两个小时我全部上的是竞赛,周六是全天从早上8点到下午5点这样一个时间段,讲座+考试+分析题目,全程都待在学校。
这种情况其实只持续了半年,因为高一上的时候,我们老师听说我在暑假看了书,以为我比较强,就把我扔到了一个很难的班,然后进行疯狂受挫
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
 
 
02
持续半年的零分状态
我高一结束的时候,其实不是很厉害,因为确实题目的练习量不是很高,虽然说我们高一结束就已经讲完了考NOIP会需要的所有知识,但是因为练习的不是很够,所以分是上不去的
 
我高一这一年过的比较艰难。CS程序是只要你有任何一个步骤,任何一个字符写错了,它都不会跑下去,不跑下去就意味着你是0分。这种0分的状态我大概持续了可能真的有半年,一共三道题,满分300分,每次考试三个半小时,每一次考试出来都是0分,那段时间其实是非常的受挫折,但确实是很喜欢这个东西,所以也就在竞赛班赖下来了。
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
赖到后面的话,慢慢就会发现,我这次考试可能有个10分,有个20分了,然后再到后面,诶,我有个五,六十了,其实高一这一整年是一个非常漫长也非常痛苦的状态。
03
连三等奖都无缘的困难群众
高一11月份的时候我考过一场NOIP,就是国内算法竞赛的入门级考试,这一次我什么奖都没有,按理说是不应该出现这个情况的,因为只要你哪怕只有10分,你都是个三等奖。但是我当时没有拿到奖的原因纯属意外。
 
当时班上是6个学生,三个学长给我们讲课,因为别的同学都很强,就没有考虑到像我这种困难群众,没有给我讲所有的程序开始之前都有一个输入输出的语句,相当于说如果不加这一行代码的话,测评的程序是没有办法来测试我的程序的,然后我所有的代码都没有加这一行,就是说我所有代码都跑不动,然后连最基础的三等奖都离我远去了。

我,从一个算法菜鸡选手到USACO全球前100的心路历程

04
零分选手到USACO铂金全球前100!
 

我,从一个算法菜鸡选手到USACO全球前100的心路历程

进入高二之后,我从10月份开始停课一个半月准备NOIP,周一到周六全部待在机房,这一段时间我觉得是我收获最大的一段时间。因为每天呆在机房的环境下,和我一起停课的同学是我们学校专门选出来竞赛很强的同学,在这种环境下,也对自己有一个鞭策的作用,因为你会发现自己和别人差得很远,这个差距已经大到了不是很能接受的地步。
对我来说的话,如果我发现我和周围同学差得很远的话,我真的会非常努力。从最开始的每天最多只能写一道题,得100分或者100稍微低一点点,到最后我每天基本上能写两道题,得一百七八分了。再后面,大多时候第3道题也可以再做一些的。

总的来说,其实这一个半月学了很多,而且
重要的是之前学过的东西,在这一个半月高强度的训练下去,去真正的熟悉它,然后去掌握它,去慢慢的了解掌握知识
这段时间之后,我又考了NOIP,成绩还是很差,二等奖。
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
一个部分是和平时训练形式有关,就是NOIP你只能提交一次,它测出来是多少分你就是多少分,但是我们训练的时候,很多时候我测了之后有bug,我改一改最后发现还是过了,我就会觉得其实我这道题是做出来了的 ,但是在考试的时候不是这样的,他不会再给你一次机会让你改一改再去测一次。

第二个原因其实还是一些自身能力的问题,因为毕竟我真正开始很大量的练习这些代码也只有一个半月的时间。

虽然NOIP考得很差,当时给了我很多的挫折,但我并没有放弃竞赛的学习,因为我觉得我可以拿到一个更好的成绩,自己付出这么多,结果不应该是这样,所以我后面接着去打了USACO的比赛。
高二12月份的时候,我进了USACO的黄金,然后1月份打进铂金,2月份的时候打出了我一个非常满意的成绩(小编说:也就是铂金级全球排名前100这样的成绩)。这一段时间成绩有长进,其实是因为知识都是之前已经学过的东西,NOIP考完之后我虽然没有去学校,但是在继续折腾这些已经学过的东西,反复的练习,同一个数据结构会写很多遍,直到我完全掌握。

 

 

05
学习两年CS,信息学竞赛对我的帮助
 
1. 普通编程的入门。因为国内也没有太多相应的CS教程,所以唯一有接触的话,其实就是接触竞赛了,你大概写那么一两个代码,或者说你稍微把算法学习一下,去看一些非常基础的算法之后,大概能感受到自己到底喜不喜欢这个东西。
2. 算法的入门。计算机科学确实是一个科学的学科,很多东西是非常理论化的,理论的东西其实就是算法的一个基础入门。大家如果后面想去学比如Computer Science的东西的话,算法的入门真的非常重要。而且就算你去做一些工业化的项目,CS其实还是非常基础的。
🌟 这里我想强调一下Computer Science计算机科学和编程的区别。CS其实教的是理论的东西,比如数论,图论,比较简单的博弈,范畴集合论这些偏数理化的东西。编程的话,其实在大学课程中,如果你不愿意涉及到这些板块,你可以走一些非常工业化的规划,稍微牺牲一下算法上的时间,保证它的效率或者稳定性之类的。其实真正的programmer就是写代码的人,他的算法不需要特别的强。所以这两个的区别其实就是理论和应用的一些区别。
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
 
3. 去发掘一个信息点,如果你有了基础的编程能力之后,想去深入的研究一下,像网络相关,网络安全,或者编程的理论、计算机相关,甚至软件开发、机器学习,在有了基础的编程能力之后,再去做这些研究相对来说会容易一些。
🌟 其实语言的话还是存在一定互通性的,我第1个入门语言是C++,之后因为有一些项目的需要,后面还去学了一些简单的Java,Python,甚至JavaScript,USACO在你有C++基础之后,相对来看都会简单很多。
从我申请的角度来谈看,NOIP和(USACO)Platinum它其实有一些细微的差距的。
因为如果你的竞赛能走到NOI的级别的话,相对于国际上的学校来讲,这个奖的知名度和认可度会稍微高一些。但如果只有NOIP的话,他们可能就没有这么熟了,反而会觉得USACO的Platinum的可信度是高一些

 

 

06

给要入坑的学弟学妹的一些建议
1. NOIP和USACO的铂金组都是属于竞赛级别了,这意味着你需要花大量时间来投入。我之前也有和Rock老师聊过,大概200个小时可以到黄金。我每周备赛时间是10个小时,学了一年,一年是50周,其实就已经500小时的课程量。
 

我,从一个算法菜鸡选手到USACO全球前100的心路历程

USACO相对来说好一些,因为在Gold级别之前就是基础的入门。就NOIP如果换算到铂金组的话,你在黄金组之前其实就是一个非常基础的算法了解,它甚至和竞赛没有任何关系。
2. 如果大家是决定了想学CS,或者已经开始准备了,USACO铜组银组的内容是无论学什么CS,比如你去当一个写码的programmer,或者你去做算法,做机器学习,做任何东西都要学习的东西
3. 尽早的去了解自己到底适不适合这个东西。因为CS其实在美国还蛮火的,火的原因一部分是因为他工资很高,但换句话说,它也不是每个人都能做的。如果每个人都能做的话,他也不会这么火了是吧?所以大家可以尽早的去了解一下。如果自己在算法方面走得还不错的话,相对来说计算机科学或者以后的算法相关的机器学习,这些东西是会稍微容易一点的。
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
我在康村观察到许多大一工程学院的学生,表明了要学CS,但一半多的学生,最后没有在CS走下去。一个可能是因为康村CS确实还是不错,讲的还是挺难的,第二个是很多人没有基础,他并不清楚到底适不适合这个东西,试了这么半年甚至一年或者一年多的时间,他才会发现,其实我真的我上不下去这课,最后再来换专业的话,其实是很花时间的。
4. 如果你确定要继续往下走的话,从黄金走到铂金的时候,你甚至进NOI的话,在你申请学校的时候,你才有可能会申请到一个CS专业排名来说,相对来说不错一点的学校。
5. 单从效率上来讲,我觉得USACO总体来看,肯定不是你对申请来说投入产出比最高的一个。因为我之前已经给大家算过的,时间投入真的很大了。但是天下没有白吃的午餐,你越容易拿到这个东西的话,它的含金量就越低。它的含金量越高,可能就越困难,这是一个tradeoff。
 
我,从一个算法菜鸡选手到USACO全球前100的心路历程
 
大家根据自己的情况,需要选择一些东西,如果你发现自己确实不适合,或者时间不够的话,用这些时间去拿一个建模比赛的奖,其实也不是不可以。毕竟申请的话,那10个奖里面不说填满了,好歹还是得填7个,建模这个奖有什么用,我确实不清楚,但有一个肯定比没有好吧。

我,从一个算法菜鸡选手到USACO全球前100的心路历程

转自:https://mp.weixin.qq.com/s/oGHa48f5hSTjOvzWxIN-uA