一、高中信息学奥林匹克竞赛考核内容
综观十多年青少年信息学(计算机)竞赛,大体上走过了三个阶段。
1、第一阶段是1984~1986年,当时以BASIC语言作为主要的程序设计语言,主要考核学生对程序设计语言的理解和熟悉程度以及编程技巧。
2、从1987年开始,进入第二阶段,逐步增加了数据结构方面知识等内容,对学生的要求除了要熟悉程序设计语言外,还要学习一些数据结构和算法的基本知识,加强上机编程调试能力的培养。
3、自从1989年我国参加第一届国际信息学奥林匹克竞赛以来,整个计算机竞赛进入了第三阶段,即对学生学习计算机理论知识和实践能力有了一个整体性的全面要求,也即整个信息学(计算机)竞赛已成为智力和应用计算机能力的竞赛,涉及到有关计算机基础知识、计算机软件知识、程序设计知识、组合数学和运筹学的知识、人工智能初步知识以及计算机应用知识等,同时要求学生有较强的编程和上机调试的实践能力。近年来,广东省信息学(计算机)奥林匹克竞赛从命题到评审都有了很大的发展,整个要求和做法力求尽量与NOI和IOI竞赛衔接。
二、信息学奥林匹克竞赛的考核方式
采用封闭式(连续3~4小时)上机编程解题的形式,不限编程语言,竞赛题量通常较大。程序完成后要通过严格的数据测试,这就对同学们编程能力有更高的要求:不但要能编程,编好的程序能运行,而且所设计的程序还要能通过在各种边界条件下和各种环境下设置的测试数据。这种严格的数据测试方法,对于培养同学们的分析问题和解决问题的能力,无疑是很有帮助的。
三、高中信息学奥林匹克竞赛简介
1、青少年信息学(计算机)奥林匹克竞赛(早期称为青少年计算机程序设计竞赛)是旨在广大青少年中普及计算机教育,推广计算机应用的一项学科性竞赛活动。全国从1984年开始举办全国性竞赛。而自从1989年我国参加第一届国际信息学奥林匹克(International Olympiad in Informatics, 简称IOI)以来,全国青少年计算机程序设计竞赛也更名为全国青少年信息学(计算机)奥林匹克(National Olympiad in Informatics, 简称NOI)。
2、全国信息学奥林匹克竞赛活动担负着选拔优秀学生参加国际学科奥林匹克竞赛任务,它是经国家教委批准,中国科协具体领导,由中国计算机学会主办的。为促进计算机普及并兼顾提高,从95年开始全国举办信息学奥林匹克竞赛分区联赛。获得全国中学生数学、物理、化学、生物、信息学5个学科奥林匹克竞赛,省赛区获得一等奖者;自主招生(高考加分照顾)享受加5-30分,和保送大学资格;其它竞赛获奖者不享受此待遇。
信息学竞赛主要考察的是编程能力和算法知识,首先你需要掌握一门语言,我个人比较推荐C++,建议的书目是吴文虎的《程序设计基础》(或者谭浩强的《C++程序设计》)
然后是算法。竞赛中主要考的算法无非是模拟、贪心、动态规划(DP)、搜索、图论的一些知识,推荐书目是刘汝佳的《算法竞赛入门经典》或者有一套专门信息学竞赛的书《信息学奥林匹克教程》你可以去搜一下(不过好像是用PASCAL写的)。再难一点的有《算法导论》和《算法艺术与信息学竞赛》,简称两大黑书(都是黑色的)。
在大概学习过一遍以后就可以去做题了,一个是往年的真题,一个是去一些网站(OJ)比如ZOJ\POJ之类的做一些练习题。
然后我不知道你们省的政策怎么样,不过现在想要保送好像起码得进省队然后在全国比赛中拿奖,这不是很容易啊(尤其是高中才学的),你可以去找你们学校负责的老师咨询一下~
如果学校有一块搞竞赛的朋友或者搞过竞赛的学长学姐也可以去了解一下~
信息学竞赛的考察形式分为笔试和上机两种形式。不仅是信息学竞赛,包括计算机考级、大学生程序设计比赛、信息技术高考等相关考试竞赛的形式也无外乎这两种。信息学竞赛以上机测试为主,但是笔试也是重要的组成部分。
信息学竞赛的笔试
信息学竞赛无论普及组还是提高组,初赛的形式是笔试,在固定的时间内完成一份试卷,原则上不允许使用计算器但是因考场而异(信息学竞赛比赛流程管理混乱不是一日两日的事情了)。批改是按照市级赛区统一批改然后统一划线决定复赛名单(当然也有城市是将参赛名额分到学校,学校校内进行批改决定名额,虽然这么做是违规的)。
信息学竞赛除了初赛是笔试以外,NOI全国决赛也有100分的笔试环节,全部都是选择题。不过这个题库是提前公布的,选手可以记忆题目通过笔试,所以如果不是因为个别选手手滑太严重,这一部分并不会有什么区分度。
信息学竞赛的上机测试
复赛、省选以及冬令营、APIO、CTSC等竞赛,以及NOI的主要比赛,都是上机测试,上机测试是信息学竞赛的重头戏,能直接决定你能获得什么奖。根据比赛的不同,每场上机测试限时3-5小时,需要完成3-4个题目。NOIP提高组、NOI和某些省选会分2天进行两次上机测试。
上机测试的题型有多种形式,但是无论是什么形式,本质上都是要求你编写程序,可以将给定的输入数据按照题目要求处理成符合要求的输出。
最常见的试题形式叫做“传统题”。传统题是指给你一个题目描述、输入输出格式、输入输出样例(有时会给你样例解释帮助你更好地理解题意)以及数据范围,你需要根据这些信息编写出一个程序,能够将给定的输入进行处理,然后输出答案。