1.比賽前一天晚上請準備好你的各類證件,事先查好去往考場的路線
2.比賽以前請先調整你的屏幕分辨率到你喜歡的大小
3.比賽以前請把編譯器的字體調爲你平時慣用的字體,尤爲是注意這種字體中的逗號,點,1,l這種易混淆的字是否是區分明顯
4.在不影響視野的狀況下,請將字號儘量調大,方便查錯
5.請將題目通讀完之後,再開始深刻思考你認爲最容易的一道題
6.即便這道題再容易,也不要着急寫代碼,請先明確本身每一步要幹什麼後,再開始寫,輕敵會是你最大的錯誤
7.即便這道題看起來再無法作,也不要提前放棄,這個時候紙和筆會是你最好的朋友,本身嘗試幾個例子,也許你就會找到答案
8.請必定先明確本身要幹什麼以後再寫程序,不要走一步想一步
9.若是這是一道動態規劃題,請先把轉移方程寫在紙上再編程
10.涉及到邊界處理、加一減一之類的問題,請在紙上舉個例子,標上下標之後,在編程時參照紙上的下標寫
11.若是思考30分鐘仍一頭霧水,沒有能夠實現的算法,請你果斷屏蔽掉100%的那一欄數據,開始寫60%,50%乃至30%的算法——在NOIP裏面,30分毫不是小數目
12.幾個經常使用的複雜度參考:100如下——多是搜索;100~500——N^3,1000~5000——N^2,100000~500000——NlogN,500000以上——N或1
13.若是你發現你旁邊的人寫得很快,請你放心,他的算法十有八九是錯的
14.雖然1s+128MB內存 (這是之前的了,如今應該是 1s + 256MB) 是標準配置,不過也不是每道題都是這樣的,仍是請認真閱讀試卷首頁的試題說明
15.計算內存的方法:數組大小*類型長度/1000 / 1000=所佔內存MB數,int(Pascal:longint)類型長度是4, long long (Pascal: int64) =8
16.記不住的話,記住int (Pascal: longint) 型數組在128MB內存下最大開到2500 0000是比較保險的(佔100MB內存)
17.寫完程序以後,請必定不要忙着編譯,請必定要將你的代碼從頭至尾通讀一遍,也就是靜態查錯,這是整個編程過程當中最重要的步驟,有的變量重複調用問題調試的話,一個小時也看不出來,靜態查錯能夠一下指出錯誤
18.靜態查錯請注意如下方面:
(1)是否寫上了using namespace std? (這是C++的,Pascal就不用了)
(2)數組開得是否夠大?
(3)變量類型是否正確?
(4)memset時,所填的sizeof(XX)的XX是否是匹配?大小是否是正確? (Pascal 是 fillchar)
(5)外層循環與內層循環的i,j是否是混用了?
(6)循環以前,i,j是否認義了?
(7)輸入數據都輸入了嗎?
(8)這個程序是在執行你想讓它執行的步驟嗎?
19.經過樣例後,請你必定不要放鬆警戒,由於樣例並不能覆蓋全部的狀況,請本身設計幾組數據,爭取卡死你的程序
20.若是出現問題,請你調試你的程序,請必定要分模塊調試,不要從頭跟到尾
21.若是你已經設計不出能卡住你的程序的數據,恭喜你能夠作下一題了
22.若是你用的是windows,請你注意把system(「pause」)註釋掉 ( 針對C/C++,Pascal 不存在 )
23.爲了萬無一失,請你用return 0結束你的程序 ( 一樣 , 針對 C/C++ ,建議是必須加上 )
24.在內存容許的狀況下,能開普通隊列就不要用循環隊列,能開下普通數組就不要用滾動數組
25.在時間容許的狀況下,能暴力就暴力,高精度能不壓位就不壓位,優化不須要的就不要
26.總之,在不超限制的前提下,能不優化就不優化,以減小代碼量和出錯機率爲第一原則
27.當比賽還剩下5~15分鐘的時候,請不要再改動你的程序,即便你懷疑它對你的一個輸入給出了錯誤答案,由於你本身算出的結果也有多是錯的
28.這個時候請你檢查是否註釋掉了該註釋掉的東西,文件名是否寫對,文件夾是否建對,請必定反覆檢查!
29.今年賽制更改,沒有人知道究竟會變成什麼樣,因此,與其瞻前顧後,不如集中精力作出你眼前的題目來的實際
30.請記住,NOIP不怕暴力,怕瞎算,不怕不會,怕不敢,有時間的話必定要寫一個暴力程序去對拍,驗證算法的正確性html