编程入门学习规划

2020年新年伊始,今天我们也来讲讲如何帮助孩子开启编程学习之路。

编程学习这个事情火起来也是最近两三年的事情,究其原因还是国务院教育部相继发文要在中小学阶段开设人工智能教育课程,像浙江,山东,北京,天津,南京都是排头兵。不仅是中小学,今年三月份公布的大学新增设的专业里面,新增人工智能专业的高校数量也是独占鳌头,其中不乏浙江大学,上海交通大学等高校。

编程入门学习规划
编程语言选择
编程入门学习规划

如何开始编程学习呢?一句话总结:

根据孩子们的思维发展状况,和当前的升学就业环境,来选择编程语言。

Scratch

Scratch是麻省理工学院的“终身幼儿园团队”开发的图形化编程工具,主要面对青少年开放。 Scratch下载是完全免费的,公布源码,允许任意修改,发布,传播。

在有人指导的情况下(家长如果有时间的话也可以指导孩子学习scratch,并不需要非常专业的编程知识),6岁的孩子基本上就可以照着例子完整的“拼”出一个能运行的程序。

因此适合5-9岁的低幼小朋友。

Python

Python最开始被应用于脚本方面的编写,作为一种解释性的语言,语法和结构通常比较简单,学习和使用通常比较简单,不需要“编译”。

但是因为提供了太多的库函数,不利于了解其底层原理。对于中小学生而言,Python是一门比较不错的入门语言。

C++

直接跟系统底层打交道,最适合竞赛的语言(2022年信息学奥赛系列赛事只能使用C++参赛。)

听到C++,如果有家长是程序员出身,就会有点发怵了,觉得难,但其实中小学学的编程C++和工业用的C++侧重点不同。竞赛侧重于考察算法而非语言本身,所以竞赛用的C++基本语法不难,也很容易入门。

19年11月C++之父全国见面会浙江站,浙江大学ACM教练王灿老师也说:编程学习中给到的数据是干净的数据,工业里面情况自然比较复杂,难度也相应上升了一些。

对于没学过Scratch的同学,一样可以学Python和C++;没有学过Python,也一样可以学C++;这三者,并不构成进阶的关系。

根据孩子们的思维发展状况,和当前的升学就业环境,来选择编程语言。

 

编程入门学习规划
编程赛事介绍
编程入门学习规划

从高校自主招生和综合评价报名条件,升学的角度来看比赛的含金量:

编程入门学习规划

含金量排名:信息学奥赛 > 青科赛、明天小小科学家、电脑制作活动 > 蓝桥杯及其他

不限语言

1.全国青少年科技创新大赛

全国青少年科技创新大赛包括青少年科技创新成果竞赛、科技辅导员科技创新成果竞赛、青少年科技实践活动比赛、青少年科技创意比赛和少年儿童科学幻想画比赛五大内容,跟青少年最息息相关的青少年科技创新成果与青少年科技创意。参赛选手可以通过编程来完成自己的科技创新项目。

    

参赛对象:在校中小学生;

参赛形式:通过官网(http://castic.xiaoxiaotong.org)报名,赛程一般为 3-4月各市报送材料, 4-5月省内组织评审,5月向大赛报送材料。终评决赛时间为每年8月。

 

2.明天小小科学家

孩子们通过计算机编程,工程设计,动手制作与技术构建,结合孩子们的日常观察、积累,去寻求自己最完美的解决方案,发展自己的创造力。

参赛对象:在校中小学生;

参赛形式:每年5月-6月申报;8月为专家初评,8月底公布入围终评名单;10月中下旬举行终评活动和颁奖典礼

创意编程

 

3.全国中小学生电脑制作大赛

电脑制作大赛不能完全说是编程比赛,更多讲究艺术与科技结合。评选项目要求学生使用计算机设计电子报、网页设计、Flash动画,APP制作等各式参赛作品。孩子可以用 Scratch 制作小游戏、小动画来参赛。

 

参赛对象在校小学生、初中生和高中生

参赛形式:4月前以省为单位选拔参赛作品;

4月:各省级组织单位进行网上报名、上传参赛学生信息、参赛作品;

5月下旬:通过技术测试的作品在活动官网公示,接受社会监督和网络人气指数投票;

6月:公示结束后,由专家评审组,按照作品评比指标进行评审,确定拟获奖等级。

 

Scratch、Python、C++

4.蓝桥杯

自第八届起,蓝桥杯大赛新增青少年组。可参赛项目如图:

 

编程入门学习规划

参赛对象在校小学生、初中生和高中生

参赛形式:

编程入门学习规划

第十一届蓝桥杯市赛选拔赛仍有部分城市尚未进行(如下图),有意愿参与的家长可关注蓝桥杯官网,蓝桥杯仅支持以机构为单位进行报名。

编程入门学习规划

 

C++

5.信息学奥赛

NOI系列活动包括:全国青少年信息学奥林匹克竞赛和全国青少年信息学奥林匹克网上同步赛、全国青少年信息学奥林匹克联赛、冬令营、选拔赛和IOI。

参赛对象:在校小学生、初中生和高中生

参赛形式:

编程入门学习规划

编程入门学习规划
编程入门学习规划
编程思维
编程入门学习规划

上文提到了一些升学,比赛,那如果没有计划参加竞赛还有必要学习编程吗?我觉得还是有必要的。因为编程学习背后还有着一套编程思维。

 

编程入门学习规划

分解,简单来说,就是“把复杂的大问题,拆解成更可执行、更好理解的小步骤”,它能锻炼我们拆解复杂问题的能力。

抽象,编程中最关键的就是“抽象思维”能力,它能锻炼我们聚焦重点,忽略无用信息,并抽取关键信息的能力。

模式识别,就是“如何找出相似的模式,并高效率解决细分问题”,它能极大锻炼我们规律整合的能力。

算法,就是根据之前一系列对于问题的理解,设计一步一步的解决路径,并解决整个问题。

全面解读C++信息学奥赛(NOIP),家长必读

众所周知,名校自主招生一直是学生和家长重点关注的升学捷径,作为自主招生中最吃香的学科奥林匹克竞赛,多年来一直是很多学生开启名牌大学之门的另一把钥匙。

近几年来,学科竞赛中相对冷门的赛事——信息学奥赛,正在受到学校、学生和家长的更多青睐。

 

全面解读C++信息学奥赛,家长必读

 

那么究竟什么是信息学奥赛?参加信息学奥赛有哪些好处?信息学奥赛都考些什么?可能很多家长对此仍然有很多疑问。现在小编就带大家一起来了解一下。

 

1. C++信息学奥赛到底是什么? 

信息学奥赛是全国中学生学科奥林匹克“五大学科竞赛”中的一门,其他四个学科为数学、物理、化学、生物学,学科奥赛是由国家认可的权威性比赛。信息学,主要是指利用计算机及其程序设计来分析和解决问题的学问。信息学奥赛由中国计算机学会主办,主要考察信息学,即编程的相关知识和能力,主要包括三级赛事:

全面解读C++信息学奥赛,家长必读

NOI的官方网站为http://www.noi.cn/。

 

2. C++信息学奥赛对升学和择校有何帮助? 

作为理科五大学科竞赛之一,信息学的认可度和含金量极高,最直接的好处就是有助于升学,无论是小升初、中考、高考、海外留学,还是申请奖学金、保送研究生,获得信息学奥赛的好成绩都会有重要的助力作用。

① 升学择优录取

信息学奥赛获奖可以享受名牌大学降分录取等优惠,初中阶段参加NOIP获奖也可作为特长生被重点高中录取。

② 参加自主招生

省级奖项可以有资格参加多数重点大学的自主招生。

③ 名牌大学保送

获得NOI奖牌的选手可以直接保送清华北大等一流名校。

全面解读C++信息学奥赛,家长必读

④ 当地学校录取分数线降低

部分省市NOIP普及组和提高组其他名次可以享受当地学校降低分数线录取。

⑤ 增强出国留学竞争力

奥赛获奖对申请国外院校也大有帮助,国际竞赛获奖可国外知名大学录取,美国、英国、德国、新加坡、日本等发达国家对计算机教育普遍重视,认为奥赛获奖学生的抽象概括和逻辑思维能力远远强于其他学生。

所以信息学奥赛是帮助孩子圆名校之梦的一个较好选择。

 

3. C++信息学奥赛对能力拓展和职业发展有何帮助? 

信息学竞赛能给孩子带来逻辑思维能力、知识结构和学习能力的巨大提升,学习竞赛的过程对于学生的锻炼远比学到的知识重要。经过信息学竞赛锤炼的孩子,其思维的深度及思考问题的能力更强,更具备在具体学科钻研和探究的能力。

在人工智能时代,编程或许将成为像开车一样基本的技能,提前具备信息学知识和编程能力,可以更好地面对即将到来的智能时代。在中国12类紧缺人才中,排在第一位的就是“电子信息类”。当前人工智能相关行业发展如火如荼,人才需求火爆,包括谷歌、阿里、百度、Facebook在内的巨头企业以及人工智能领域的创新先锋都在疯抢信息学人才,甚至开出百万年薪,而这种红利期还仅仅是刚开始。所以信息学奥赛不仅能提供一块不错的升学敲门砖,还可以对孩子整个人生轨迹产生积极影响。

2018年初教育部公布高中新课标,将信息学竞赛必学内容纳入了必修和选修的范畴,更是将“数据和计算”列为必修,提出了“学会一种编程语言”的要求,编程普遍进入高考或许只是时间问题。

 

4. C++信息学奥赛现在的报考情况如何? 

信息学奥赛当前最突出的现状为:由于信息学不是中学阶段的关键学科,家长的认知率仍然不高,有些家长甚至都没有听说过。所以竞赛参与人数相对少,且获奖比例较高,因此竞争相对不激烈。另外,信息学奥赛还有“比赛多、机会多”的特点,只要有一次考得好,就有机会获得高校“直接录取”、“降一本线录取”、“降分录取”等相关优惠政策。下面是八大名校在信息学奥赛方面的自招优惠政策。

 

全面解读C++信息学奥赛,家长必读

 

另外,信息学竞赛的报考情况在全国各省份很不均衡。以全国2018年NOIP提高组竞赛省一等奖分数线为例,浙江为375分,而河南只有275分,差距有一百分之巨。所以,对于信息学奥赛普及率较低的省份,学生的获奖机会也更高。

 

5. C++信息学奥赛相比于其他竞赛有何优势? 

信息学相比于其他四门学科有着明显的优势。

首先是难度。五大学科竞赛中,数学和物理奥赛都太“难”,北京数学奥赛金牌教练汪老师曾表示:只有不到5%的学生适合学奥数,其很大程度是拼天赋;而物理则需要学生具备浓厚的兴趣和探索精神,而且动辄百万的报考人数也使难度攀升。化学和生物奥赛一定程度上是考知识积累,由于专业就业较难,已日趋边缘化。

信息学奥赛则相对容易一些,有初一的数学基础就完全可以学习,而且学生基础水平相当,成绩不会有较大差别,所以越早接触信息学越容易出好成绩,而且只要肯下功夫,多半孩子都能拿奖。相比其他学科,信息学是目前发挥个人潜力最广,发展空间最大,专业选择面最全的课程。

第二是竞争压力小。虽然近年来报考人数不断攀升,但与全国数百万学习“奥数”的中小学生相比,2018年全国参加信息学奥赛的考生仅为15 万,形成强烈的反差。以辽宁省为例,数学奥赛每年5万人左右参加,而信息学奥赛报考人数只有不到3000人。由于参赛人数上差异大,信息学奥赛在部分省份获奖率甚至超数学奥赛十数倍。

 

全面解读C++信息学奥赛,家长必读

从中可以看出,NOIP信息学一等奖获奖人数在2017年就已接近一等奖总人数的三成。

 

 

6. C++信息学奥赛的赛制和赛程是什么?  

信息学竞赛主要分为NOIP(全国青少年信息学奥林匹克联赛/分区联赛)NOI(全国青少年信息学奥林匹克竞赛)冬令营选拔赛IOI(国际信息学奥林匹克竞赛)这几个级别的比赛,竞赛的层级次序如图:

全面解读C++信息学奥赛,家长必读

               全面解读C++信息学奥赛,家长必读

NOIP虽然为信息学奥赛的第一站,但其实优秀的获奖者已经有被名校录取的资格了。比如,今年有3个NOIP高于400分的初中生被清华提前录取,十几个被北大提前录取(只要高考过一本线即可)。

国家范围内的NOI竞赛,除了省选选手,每个省也会分配一些非正式参赛选手,不参与评奖,但会发成绩证书,也能够现场和大学签约。总体来看,签约有越来越多、年龄越来越小的趋势。

另外,一些城市也会组织区级赛(如海淀区信息学奥赛)和市级赛(如北京市小学生信息学科普日),有志于在奥赛获奖的孩子可以提前感受考试。

下图是信息学奥赛的竞赛时间表:

全面解读C++信息学奥赛,家长必读

由此可见,信息学奥赛有三个特点:比赛流程较长,前后持续两整年;赛事较多,层级不断提升;机会多,只要有一次发挥较好,就有机会享受大学录取优惠。

 

7. C++信息学奥赛考什么? 

信息学奥赛主要考的运用计算机分析问题、设计算法以及上机编程、调试程序的能力。其中对C++的掌握能力是核心,信息学奥赛首先需要学习的就是C++

具体来看,NOIP初试形式为笔试,侧重考察学生计算机和编程基础知识。复试形式为机考,侧重考察学生对问题的分析理解能力、数学抽象能力、驾驭编程语言的能力及编程技巧、想象力和创造性。信息学考试的特点和魅力,在于每一次做题都是在“设计”,而不仅仅是被动的测试和做答,每个问题都有实际意义。对于孩子解决问题能力的提高,是其他科目都无法相提并论的。

目前NOIP可以使用C、C++和Pascal三种编程语言,而2022年后,NOIP比赛中C和Pascal语言将不再可用,只能使用C++。所以,学信息学,很大程度上就是学习C++。

 

8. 哪些孩子适合学习信息学? 

如果没有竞赛这个前提,编程是谁都可以学的。但是如果是竞赛,肯定对学生有一定要求。首先需要对计算机感兴趣,兴趣是最好的老师,沉浸其中的孩子总会坚持下去;再就是本来成绩较好、知识全面发展的学生更适合学习信息学,因为竞赛初衷是让学有余力的学生拓展学习领域,因为信息学现在不属于学校教育的科目,如果文化课本身不好,很难花时间学习另一门新的学科。有自控力的孩子也更适合,能坐得住,静下心来学习是重要基础,因为信息学学习需要付出心血和汗水。较强的逻辑思维能力虽然不是学习信息学的基石,但会是获奖的重要元素。

 

9. 应该怎样着手准备C++信息学奥赛? 

首先是何时开始学习及从什么学起的问题。五年级以下的孩子可以从Scratch学起,早点接触编程,培养对计算思维和编程的兴趣。5-6年级开始学习C++,这时相对复杂的数学和逻辑问题可以更好地理解,并且可以尝试参加NOIP普及组的竞赛,为将来取得更好的成绩积累经验。

由于获得大学保送只有高一、高二才有机会,因此在初中阶段一定要参加NOIP普及组并尽早参与到提高组比赛,以积累实战经验,如果初中阶段竞赛获奖,也有助于进入重点高中。另外,有一些省份是允许初中生同年同时参加普及组和提高组比赛。下图是准备信息学奥赛的时间节奏:

全面解读C++信息学奥赛,家长必读

根据历年获奖选手可以看出,最后获奖的都是很早就开始学习编程的孩子,而且他们每年的排名都在慢慢地往前。

 

 

10. 如何报名参加C++信息学奥赛?  

信息学奥赛没有年龄限制,也就是小学、初中、高中阶段的学生都可以报名参加NOIP赛事。初赛一般都是以学校为单位通过指导教师报名(每年9月份开始报名),由指导教师汇总本校学校报名情况并提交给NOI各省特派员,若学校因故不能统一报名,家长可直接联系特派员报名(各省特派员的联络方式请见http://www.noi.cn/newsview.html?id=81&hash=C6F26A&type=9),由省特派员在报名截止日期前统一提交至中国计算机学会(CCF)。其中NOIP初赛时间是每年10月份复赛为每年11月份。通过NOIP初赛的考生可以在10月末报名复赛。

由于没有年龄限制,所以如果孩子从小学开始进行编程培训,并开始参加信息学奥赛,那么这将是无比领先的起点优势。

 

 

☆ 他们都曾是信息学奥赛获奖者:

20多年前,他们都曾是信息学奥赛获奖者,现在,他们从事的工作都走在时代前沿。

王小川搜狗CEO,18岁获得NOI金牌被保送清华,随后代表中国参加IOI(国际信息学奥林匹克竞赛)并获得金牌。

魏小亮Facebook工程副总裁,1997年获NOI银牌,博士毕业于美国加州理工科学专业。

包塔美团金融CTO,1996获得NOI金牌被保送清华,毕业于清华计算机科学与技术系,获硕士学位。曾担任网易有道公司副总裁,是有道创始团队成员之一,带领有道词典和翻译业务取得国内同行业绝对领先地位。 

陈磊,拼多多CTO,1996年获得NOI金牌,博士毕业于美国威斯康星大学麦迪逊分校计算机科学专业。

还有很多很多……

 

在这些技术大牛和商界领袖的人生历程中,信息学奥赛无疑扮演了重要角色,深刻地改变了他们的人生轨迹。信息学奥赛带给孩子的不仅仅是升学上的便利,在当前人工智能席卷一切的当下,学习信息学更能够让孩子搭上早班车,帮助孩子为明天瞬息万变的社会做准备。

转自:https://mp.weixin.qq.com/s/fhpRs74Inw09D1-kuhljqw

NOIP学习方法, USACO资料整理收集

刚入坑的oier容易不知道玩什么,怎么玩,(尤其是单机OI的弱校/kel)…
学一些基础的算法之后,从最近10年的联赛题开始做,不会就学,是一个很好的做法(记得跳过所有和高精度有关的东西)….不过对于我这种智商不足的选手而言可能比较麻烦….
线上的教学,我可以说(免费获取的)效果都不好,我曾经初三/高一的时候尝试在学堂在线上面跟着数据结构mooc学习,去coursera上面找大名鼎鼎的algorithms的教学视频学习,但是它们的节奏,与内容结构完全不适合OI初学者,有了一定的水平之后听课比起看书就是浪费时间….可以试试B站上面找UESTC算法讲堂,但是没有特别基础的教学,并不是手把手拉人入坑的,而是帮助对文字理解能力不足的选手克服学习障碍的.

传统路线吧,买一发LRJ的紫色+蓝白书,买一发LYD的《qwq指南》…然后开始学.LRJ的紫色书(叫算法竞赛入门经典)还是很系统的,难度也挺友好的,花上半年时间应该是刷完没问题吧QAQ,没必要做完上面的所有题目,但是例题是一定都要写的.LYD那本书的话更贴近现在真实的NOIp,推荐所有例题都写.书中对于一些刚入坑容易产生恐惧感的数据结构/网络流建模有些基础的介绍,让人知道现在OI是个人就得会hld,就得会dinic,就是得学,而且只是有个初步了解,写点经典应用完全不难….

如果没有指引的话搞竞赛很容易跑偏的,尤其是在没有升学压力的情况下。入门就用lrj的《算法竞赛入门经典》,非常简明易懂…配合USACO多刷题别只看书…C语言的话看到指针就可以开始做题了…其实很多时候都能用数组解决…别去OJ上刷水题.

联赛一等奖是比较简单的——至少和前几年比起来,暴力就足以帮你轻松拿到一等。学习了基础语法后,其实就可以去学习需要掌握的基础算法,然后做题就行了。学习新算法的一种途径是看书,比如现在主流推荐的《算法竞赛入门经典》、《挑战程序设计竞赛》,任选一个就好;答主曾经看过一本叫做《啊哈算法》,虽然讲的内容较浅不太适合应试,但是内容很有趣,如果当做算法入门来构建思维也是不错的。当然,更多的内容还是要靠网上博客,包含对于各种算法的理解,还有海量的题解。

剩下的只有做题了,慢慢积累不同的思路、实现,培养一种思考题目的方式。许多OJ上可以做题,如果目标是一等奖的话,有luogu、codevs、vijos等等,这些上面都有历年联赛原题;美国usaco的题目质量也很高,难度恰好从普及组覆盖至比省选低,当然国内许多OJ已经有翻译了;国外的codeforces,topcoder,atcoder,codechef等比赛平台也有很多好题,可以做上面较简单的题;如果有精力在奇怪的时间打比赛的话,可以试试这些比赛的div2。

许多题目都在网上有许多题解,对于题解不同的人有不同的用法,对于不会的题直接看题解学习也不失为一种学习方式,当然还是建议先多思考。

慢慢刷题的话,按照难度顺序,一步一步来吧。

如果是没有竞赛环境的话,那么可以考虑加入一些群,比如uoj,loj群,虽然学术风气日下毒瘤风气日增,而且对新人略不友好,但是相信题主能在这些地方得到一些答疑和指导,更重要的是能看到一个全新的世界。

信息学是一个高度依赖自学的竞赛,而且一等奖的要求确实不算太高。题主有兴趣的话,就已经具备了一个很重要的条件了

真题库

https://ac.nowcoder.com/acm/archive

资料网站 https://oi-wiki.org/

在线课堂 https://www.eeo.cn/cn/

B站视频文档(1~10节)信息学视频教程直接在B站搜索:BV1if4y1v7oD链接:http://note.youdao.com/noteshare?id=7e5fd293016514f4b1458a5e34758c66
Python课程32节精美PPT链接: https://pan.baidu.com/s/12ipKSIjnlbR9KKRMRSRDng 提取码: e59k
33节scratch精美课程PPT及scratch源码
链接:https://pan.baidu.com/s/10txoxFiw1X-d3wbQjmIQag 
提取码:w0j0
NOIP从入门到精通(NOIP看这一个教程就够了)链接:https://pan.baidu.com/s/1zbaunzRRhcpGCWIQ4qa-aQ 提取码:iws2
NOIP历年真题及答案(2006~2019)链接:https://pan.baidu.com/s/1DfOBWybqpBvX8YkMrQLGRw提取码:bywv
编辑器
pycharm汉化版链接:https://pan.baidu.com/s/1h2jOZw5ch3Jpt8izhZCBRQ 提取码:6yqd
mu1.1中文版链接:https://pan.baidu.com/s/1oeiBLjuDkJ2WsEgVN_LTSg 提取码:ntb2
NOILinux系统安装(含说明文档)
链接:https://pan.baidu.com/s/1alfX1PfS-jtjc41tcNtERg 提取码:hnnw
DEV-CPP链接:https://pan.baidu.com/s/1VtZz40ShX7Opq87y2DD9Bg 提取码:8j3h

习资源
B站视频文档(1~10节)信息学视频教程直接在B站搜索:BV1if4y1v7oD链接:http://note.youdao.com/noteshare?id=7e5fd293016514f4b1458a5e34758c66
Python课程32节精美PPT链接: https://pan.baidu.com/s/12ipKSIjnlbR9KKRMRSRDng 提取码: e59k
33节scratch精美课程PPT及scratch源码
链接:https://pan.baidu.com/s/10txoxFiw1X-d3wbQjmIQag 
提取码:w0j0
NOIP从入门到精通(NOIP看这一个教程就够了)链接:https://pan.baidu.com/s/1zbaunzRRhcpGCWIQ4qa-aQ 提取码:iws2
NOIP历年真题及答案(2006~2019)链接:https://pan.baidu.com/s/1DfOBWybqpBvX8YkMrQLGRw提取码:bywv
编辑器
pycharm汉化版链接:https://pan.baidu.com/s/1h2jOZw5ch3Jpt8izhZCBRQ 提取码:6yqd
mu1.1中文版链接:https://pan.baidu.com/s/1oeiBLjuDkJ2WsEgVN_LTSg 提取码:ntb2
NOILinux系统安装(含说明文档)
链接:https://pan.baidu.com/s/1alfX1PfS-jtjc41tcNtERg 提取码:hnnw
DEV-CPP链接:https://pan.baidu.com/s/1VtZz40ShX7Opq87y2DD9Bg 提取码:8j3h

(转)2006-2019的OI圈子

从 2007 年起在某小学任 OI 教练(兼职教初中生)。本文经学生润色。

2006 年

大学刚毕业,跑到小学当老师。第一个学期并没有教 OI,只是上电脑课。

2007 年

由于教育局的安排,我和同市的一些老师参加了市里 OI 教练的培训。

那时候 Pascal 是绝对的主流。不过众所周知教材的编写一般都有滞后性,由于 BASIC 在 2005 年才退出 OI,当时的竞赛书还是 BASIC 和 Pascal 并存的。当时我们学习过的教材是朱全民曹利国等教练编写的《奥赛经典》丛书,和吴文虎的《信息学奥林匹克竞赛指导》丛书。这些书长这个样子:[图文]信息学奥林匹克竞赛(书目) – 百度文库

第一次知道 Vijos(当时的域名还是 http://vijos.cn)和 oibh,那时的 Vijos 还长这样:

多嘴一句,从 OI 远古时期一直留下来的网站恐怕只有 Vijos 和 大榕树编程-Pascal,算法,数据结构,信息学竞赛 了。

当年 9 月给小朋友上了第一堂 OI 入门课。当时选的是四到六年级的小朋友。这第一批小朋友到高中时只剩两个还在搞 OI 了,最后这两人一个去了武大一个去了中山大学。

当时最响亮的名字是胡伟栋和楼天城。顾森(Matrix67)也渐渐有了名气。当时在 Vijos 和 oibh 活跃的用户(后来做了哪个站的管理员来着?记不清了) @钟方源 毕业后有着有趣的履历,详情见钟方源_百度百科。(其实钟方源可能是全知乎最适合回答这个问题的人)

2008 年

应高中老师要求,小学信息学老师必须能看懂 NOIP 提高组题目的题解,并在看题解后做到满分。刚工作两年的我瑟瑟发抖。结果去高中听课时,得知 NOCOW,从此打开了新世界的大门。

这一年《青少年信奥培训教材》系列出版,在 2008-2013 年间算是竞赛选手的首选。

花半年自己刷完了 USACO Training 前四章,第五章有些地方实在刷不动。顺便熟悉了一下 Cena 和 Tsinsen 1.1。年底,Tsinsen 2.0 发布。

(如果有人想考古, @Planet6174 给我提供了一份存档:https://pan.baidu.com/s/1UC6p0d3i2Eb6iJZbXHK0lw,提取码 xd5e)(友情提示:想在 Win10 上用 Tsinsen 会比较折腾)

2009 年

上半年(1 至 8 月)我做了 POJ 的一两百题。

Vijos 经常挂掉,年底直接关站了,遗迹:那些攻击VIJOS的人,你们有没有完 – Vijos 。有选手在同期建立了 Tyvj 来代替,后来(2010 年初)有段时间我被迫自建校内 OJ(用的是泄露的 Vijos 1.0 的代码)。还有 oibh 很不稳。

我还在那年听说了 RQNOJ,不过我用得不多,按下不表。

年底,大概是 OI / ICPC 界最经典的教材——刘汝佳的《算法竞赛入门经典》出版。不过当时我还不会 C++ 所以没买。其实那年还有刘汝佳的一本译作《编程挑战》出版(中文版现在绝版了,不过 UVa 上可以看到这本书原版和中文版的样子)。

从那年开始我兼职带初中生。那年提高组的“靶形数独”备受吐槽:正搜会挂,换个方向搜就能过(现在在洛谷讨论区仍然能看到这类吐槽)。回看十年前的题目会让人不经感叹现在的 OI 命题方向、数据质量正常了许多。

2010 年

oibh 短暂的重建,后又倒闭。

《青少年信息学奥林匹克竞赛实战辅导》丛书出版。

个人比较喜欢的一本书《数据结构与算法设计——Pascal 语言》推出第二版。

普及组的“三国游戏”令人影响深刻。

对了,上海交大取得当年 ICPC 全球总冠军。不过这个和 OI 关系不大。

2011 年

年初我生娃,在家待了大半年。因此这年的情况不太了解。

这年出了 Lemon(还是 10 年出的?记不清了)。从此之后 Tsinsen 和 Cena 逐渐淡出选手视野。

在贴吧,吧主陈立杰(WJMZBMR)正当红。多说几句:从 2016 年卖吧时间后才开始搞 OI 的选手可能不知道当年 NOIP 吧有多火。

2012 年

2011 年 STL 解禁。顺应市教育局的要求,小朋友的入门语言从 Pascal 变成了 C++。说句老实话,我也是这个时候才 C++ 入门的(上大学时学的是 C 语言,并且忘得差不多了)

7 月。Vijos 复活。

下半年《算法竞赛入门经典——训练指南》出版。我也顺手把这本和刘汝佳之前那本买了。

RQNOJ 改版,在当时我觉得还不错。我当年没有截图,下图是我从 Web Archive 上找的:

我去打了 2011/12 赛季的 USACO Contest,一直卡在银牌组,进不到金牌组。

那年普及组的“文化之旅”又是一道备受吐槽的题。买的年鉴里写是 A*,但网上有选手说标程会被卡掉。提高组的“开车旅行”引入倍增,从此成为 NOIP 常驻考点。

2013 年

Vijos 出了 2.0,OJ 设计中的一股清流。个人认为,从 UI 来说,洛谷直到出了 4 才有媲美当时 Vijos 的水平。

《挑战程序设计竞赛》出版。尺取法、O(nV) 多重背包从此在 OI 中得到普及。

在现在(2019 年)饱受诟病的董永建教练写的《信息学奥赛一本通》出版。但无论如何,在 2013 年这书具有不可替代性,是用起来最省事的一本书。

《算法竞赛入门经典》第二版出版。

陈立杰拿下了 IOI 冠军,万众瞩目。

2014 年(TODO)

  • UniversalOJ 建立;

2015 年

  • 上半年,洛谷建立“试炼场”功能,国内首创。

当时我们公认这个功能一般般,这玩意最多辅助刷题。不过过了半年后,小朋友反响很好。

多说几句:刚才在这个问题下翻到了 @多喝热水重启试试回答

当时完全没想到洛谷能搞这么大,说实话当时我们是反感洛谷的,因为题目质量参差不齐、且总体水题、重题太多……再到后来考完noip,洛谷的数据异常不靠谱(太水了)…就完全放弃洛谷了…
当时常用的oj:uoj、bzoj、51nod,到现在来看质量还是有保证的;以及刚入门的时候openjudge、poj、51nod、cogs、杭电等也不错。
但是洛谷吗…我觉得除非大规模删题,否则满足非重题、非数据垃圾题、非报复社会除了出题人无人AC这三点的题,应该到不了一半,而且剩下的去除搬的题以外也是模版题、水题占大多数…
我觉得这就是资本的悲哀吧…想想当年用爱发电的uoj…不过这一点到也怪不得洛谷,毕竟给机构讲过课就知道竞赛跟资本挂钩以后就会变的多么肮脏(相对原本的纯洁的“肮脏”,你要是和报名费18W的某大会比还是比不得的)。不过从和资本结合来看我真的觉得bzoj和51nod还算不错。
反正都退役了,oi变成啥样跟我也没啥关系了,而且真正搞oi的人也会早早发现洛谷不行吧……但是每次给学生们讲课的时候学生问我“为什么这个题我从洛谷上ac了在xxx题库没过?”我不假思索回答“洛谷数据太水了”的时候,未免会脑补到被垃圾数据耽误、埋下知识漏洞的孩子,在重要比赛上因此gg的孩子的状况;或者是考完大型考试后在洛谷上测一测结果高分很开心,但是真正出分以后发现落差过大,难免心酸。

我也来批评几句。前半部分他所说的没有问题,至少在 2016 年及之前的题库是挺烂的,他提到的当时的洛谷题库“总体水题、重题太多;数据水”都是真实的。但他后面给我来一句“我觉得这就是资本的悲哀吧”就纯属扯淡了,至少洛谷现在有钱后能多搞一些质量相对较好的比赛了。

2016 年

  • CodeVS 与 Vijos 也上线了与洛谷试炼场类似的功能;
  • 三月份 NOIP 吧被卖给清北澡堂,NOIP 吧自此衰落,许多选手因此转战知乎;

爆吧的遗迹:http://tieba.baidu.com/p/4399663523http://tieba.baidu.com/home/main?un=%E6%9B%BE%E7%BB%8F%E7%9A%84%E8%BF%B7%E5%BD%A9%E8%83%B6

  • 洛谷与 CodeVS 之间的火药味(这部分我不了解,我还是不写了);
  • 《CCF 中学生程序设计》丛书前两本发售;

至于我对这本书的评价……炒冷饭,聊胜于无

  • 众多选手死于“天天爱跑步”;

2017 年

  • NOIP 收费涨价太夸张引起选手不满;
  • 浴谷夏令营,洛谷开始商业化;
  • 计蒜课开始搞 NOIP 培训;
  • Tyvj 被清北澡堂买下,更名为 JoyOI;

2018 年

2019 年

  • CCF 和教育部之间有摩擦,先是教育部不承认 NOI,后是 NOIP 换皮;
  • CodeVS、BZOJ 半倒闭;

线下有我以前的学生认出我的回答了 哈哈哈

顺便在这里回答我学生的几个问题:

  • 为什么没提到 Contest Hunter?

我在贴吧见过,但没用过。现在这个 OJ 在新选手里面似乎也不太出名?

  • 哪些 OJ 值得推荐?

这个问题太宽泛了……把范围限定在国内 OJ,如果看重社区功能的话只能是洛谷、UniversalOJ 和 LibreOJ(后两者的用户群成员的平均水平较高);如果单纯说设计水平的话,Vijos4 和 NJUPT OJ 都可以(前者目前的开发者是 twd2,后者的开发者是 @张佑杰 )。

  • 我对 OI 中的商业化有何看法?

最早的商业化就是 BZOJ。最早我是非常支持的,我想着 BZOJ 收钱后能把钱用于买题出比赛,后续 BZOJ 也确实做到了。但是它败就败在后来权限题多得离谱,而同期出了洛谷和 UOJ。

作者:匿名用户
链接:https://www.zhihu.com/question/338471315/answer/888291706
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

第二十四届(2018)全国青少年信息学奥林匹克联赛上海赛区竞赛通知

第二十四届全国青少年信息学奥林匹克联赛上海赛区竞赛通知

一、宗旨

普及与提高青少年学生的程序设计水平,为上海市参加全国竞赛选拔人材。

  • 主办、协办单位

主办单位:上海市科技艺术教育中心

协办单位:华东师范大学第二附属中学

三、参与对象和活动内容

竞赛分提高、普及、入门三个组别,每一组别分初赛和复赛两阶段进行,其中初赛为笔试,内容为有关信息科技和程序设计的基本知识;复赛为上机编程,内容为算法设计与编程解题。采用中国计算机学会统一组织、统一大纲、统一命题、统一竞赛时间、统一评分标准的方式进行。竞赛编程语言:任选Pascal、C、C++三种语言之一(版本Free Pascal、Dev C++)。

四、报名办法

 按照中国计算机学会NOIP2018报名通知要求,采取学生自愿报名参加的原则,参加者必须是2018年上海在校学生(含同等年龄段中等专业学校的在校生)。初赛采用传统报名方式,选手以学籍学校为单位在指导教师处报名,由指导教师汇总本校学校报名情况并提交给NOI省特派员。报名截止日期:2018年9月22日(星期六)。

联系地点:中山西路1247号 2号楼305室

       联系电话:64378912       联系人:吴申广

       邮箱:wushenguang@sina.com

五、初复赛时间

初赛:2018年10月13日(周六),14:30-16:30 提高组、普及组、入门组

复赛:

一试:2018年11月10日(周六),提高组8:30-12:00,普及组14:30-18:00;

二试:2018年11月11日(周日),提高组8:30-12:00。

入门组时间另行通知。

 初、复赛地点:见初、复赛准考证

未尽之处以《全国青少年信息学奥林匹克联赛组织指南》和《CCF NOIP2018报名通知》为准(www.noi.cn 全国信息学奥林匹克官方网站)。

                            全国信息学奥林匹克联赛上海赛区竞赛委员会

                                          二Ο一八年七月

附NOIP报名表

组别:

序号 姓名 性别 学校 年级 班级 参赛语种
pascal
C
C++
指导教师 指导老师邮箱 指导老师电话 学籍号 身份证号
                     

转自:http://www.noi.cn/newsview.html?id=670&hash=23F171&type=99