溫馨提示,信息學的學習須具備的五大能力:
一是觀察、分析問題的能力;
二是數學建模的能力;
三是靈活運用算法的能力;
四是編寫代碼并且調試的能力;
五是檢測程序是否正確的能力。
除此之外,調試能力比編程能力更重要。很多學生之所以參加信息學競賽但拿不了獎,很大部分原因就在于調試環節出了差錯。具備算法功底、編程能力之外,還需要具備創造性思維以及團隊合作的能力。信息學與各個學科都密切相關,尤其是數學學科,信息學的本質就是利用計算機來解決數學問題。
信息學競賽的比賽時間
每年10-11月份:全國奧林匹克信息學競賽聯賽NOIP,初賽和復賽;
來年7月份:全國奧林匹克信息學競賽NOI,信息競賽國決;
翻年1月份:國家隊選拔賽;
8月份:參加國際奧林匹克信息學競賽IOI。
信息學競賽考什么?考試的形式及流程
聯賽分兩個等級組:普及組和提高組。每組競賽分兩輪:初試和復試。
初試形式為筆試,側重考察學生的計算機基礎知識和編程的基本能力,并對知識面的廣度進行測試。初試為資格測試,各省初試成績在本賽區前15%的學生進入復賽。
復試形式為上機,著重考察學生對問題的分析理解力,數學抽象能力,編程語言的能力和編程技巧、想象力和創造性等。各省聯賽的等第獎在復試的優勝者中產生。
初賽:初賽全部為筆試,滿分100分。試題由四部分組成:
1、選擇題:共20題,每題1.5分,共計30分。每題有5個備選答案,前10個題為單選題(即每題有且只有一個正確答案,選對得分),后10題為不定項選擇題(即每題有1至5個正確答案,只有全部選對才得分)。
2、問題求解題:共2題,每題5分,共計10分。試題給出一個敘述較為簡單的問題,要求學生對問題進行析,找到一個合適的算法,并推算出問題的解。考生給出的答案與標準答案相同,則得分:否則不得分。
3、程序閱讀理解題:共4題,每題8分,共計32分。題目給出一段程序(不一定有關于程序功能的說明),考生通過閱讀理解該段程序給出程序的輸出。輸出與標準答案一致,則得分;否則不得分。
4、程序完善題:共2題,每題14分,共計28分。題目給出一段關于程序功能的文字說明,然后給出一段程序代碼,在代碼中略去了若干個語句或語句的一部分并在這些位置給出空格,要求考生根據程序的功能說明和代碼的上下文,填出被略去的語句。填對則得分;否則不得分。
復賽:自2011年開始,提高組復賽分為一試和二試,各3題,每題100分,共計600分。
每一試題包括:題目、問題描述、輸入輸出要求、樣例描述及相關說明。測試時,測試程序為每道題提供了5-10組測試數據,考生程序每答對一組得10?20分,累計分即為該道題的得分。
測試的知識范圍
(一)初賽內容與要求
1、計算機的基本常識
計算機和信息社會(信息社會的主要特征、計算機的主要特征、數字通信網絡的主要特征、數字化)
信息輸入輸出基本原理(信息交換環境、文字圖形多媒體信息的輸入輸出方式)
信息的表示與處理(信息編碼、微處理部件MPU、內存儲結構、指令,程序,和存儲程序原理、程序的三種基本控制結構)
信息的存儲、組織與管理(存儲介質、存儲器結構、文件管理、數據庫管理)
信息系統組成及互連網的基本知識(計算機構成原理、槽和端口的部件間可擴展互連方式、層次式的互連結構、互聯網絡、TCP/IP協議、HTTP協議、WEB應用的主要方式和特點)
人機交互界面的基本概念(窗口系統、人和計算機交流信息的途徑(文本及交互操作))
信息技術的新發展、新特點、新應用等。
2、計算機的基本操作
WINDOWS和LINUX的基本操作知識
聯網的基本使用常識(網上瀏覽、搜索和查詢等)
常用的工具軟件使用(文字編輯、電子郵件收發等)
3、程序設計的基本知識
數據結構
程序語言中基本數據類型(字符、整數、長整數、浮點)
浮點運算中的精度和數值比較
一維數組(串)與線性表
記錄類型(PASCAL)/結構類型(C)
程序設計
結構化程序設計的基本概念
閱讀理解程序的基本能力
具有將簡單問題抽象成適合計算機解決的模型的基本能力
具有針對模型設計簡單算法的基本能力
程序流程描述(自然語言/偽碼/NS圖/其他)
基本算法處理
初等算法(計數、統計、數學運算等)
排序算法(冒泡法、插入排序、合并排序、快速排序)
查找(順序查找、二分法)
回溯算法
(二)復賽內容與要求
在初賽的內容上增加以下內容
1、數據結構
指針類型
多維數組
單鏈表及循環鏈表
二叉樹
文件操作(從文本文件中讀入數據,并輸出到文本文件中)
2、程序設計
算法的實現能力
程序調試基本能力
設計測試數據的基本能力
程序的時間復雜度和空間復雜度的估計
3、算法處理
離散數學知識的應用(如排列組合、簡單圖論、數理邏輯)
分治思想
模擬法
貪心法
簡單搜索算法(深度優先廣度優先)搜索中的剪枝
動態規劃的思想及基本算法
信息學競賽必備書單匯總
基礎篇
1、《全國青少年信息學奧林匹克分區聯賽初賽培訓教材》(推薦指數:4顆星)曹文,吳濤編著,知識點大雜燴,部分內容由學生撰寫,但是對初賽知識點的覆蓋還是做得相當不錯的。語言是pascal的。
2、譚浩強老先生寫的《C語言程序設計(第三版)》(推薦指數:5顆星)針對零基礎學C語言的筒子,這本書是必推的。
3、《騙分導論》(推薦指數:5顆星)參加NOIP必看之經典。
4、《全國信息學奧林匹克聯賽培訓教程(一)》(推薦指數:5顆星)傳說中的黃書。吳文虎,王建德著,系統地介紹了計算機的基礎知識和利用Pascal語言進行程序設計的方法。
5、《全國青少年信息學奧林匹克聯賽模擬訓練試卷精選》王建德著,傳說中的紅書。
6、《算法競賽入門經典》(推薦指數:5顆星)劉汝佳著,算法必看經典。
7、《算法競賽入門經典:訓練指南》(推薦指數:5顆星)劉汝佳著,《算法競賽入門經典》的重要補充。
歷年真題必須做,這是絕對不能遺失的存在!
1、題庫方面首推USACO(美國的賽題),usaco寫完了一等基本上就沒有問題,如果悟性好的話甚至能在NOI取得不錯的成績。
2、除此之外Vijos也是一個不錯的題庫,有很多中文題。
3、國內廣受NOIP級別選手喜歡的國內OJ(Tyvj、CodeVs、洛谷、RQNOJ)。
4、BZOJ擁有上千道省選級別及以上的題目資源,但有一部分題目需要購買權限才能訪問。
NOIP初賽偏重于基礎知識,一部分是計算機的基礎知識,計算機基礎部分,內容多而雜,多以選擇題形式出現,所以不必要花太多時間去背,而是平時多積累,有意識的去記憶,留下印象。內容會包括計算機的特征(硬件和軟件)、網絡的特征和基本概念、信息的輸入輸出、信息的表示和處理、新興應用等。另一部分是數學內容,范圍很廣,永遠不知道會考到哪一部分的知識點,但試卷包括兩道數學題,所以不能忽視。比較重要的大概包括排列、組合、輾轉相除法、容斥原理等。還有數據結構會考基本類型(整型、長整型、浮點型、字符等)和數組。比較容易在初賽中出現的數據類型有樹、棧、隊列等。
樹:二叉樹、完全樹等;棧:先進后出特點;隊列:先進先出特點。最后一部分是程序完成(也就是算法)。這部分完全是靠你的做題基礎,沒有捷徑,只能靠你平時多做題,掌握簡單算法。