1. 程式人生 > >【OI】NOIP2018普及組 經歷+總結

【OI】NOIP2018普及組 經歷+總結

前言:

從最初接觸oi到複賽結束,也已經將近有一年了。從對於程式一竅不懂到現在開始深入學習演算法,只是短短的不到一年的時間罷了。這次noip,也就相當於是對這一年的成果的一個檢測。希望這次能取得一個好的成績吧。

 

初賽:

今年初賽算是比較難了。歷史題爆炸,只能隨便蒙一個(事實證明多看官網政策很重要),數學題較為難算,算下來選擇題錯了五道,總體來講這次選擇題還是有點難。

問題求解和閱讀程式求解很水,細心一點就能拿滿分。

完善程式第一題沒認真做,看錯了一個空;第二題的演算法很難,但是空全部都可以蒙對,當時蒙得太急可能有空濛錯了,估計要扣3~12分。

最後成績出來比估分高,估計是蒙對的比預想的要多一些。

總體來講,今年初賽的分數線比去年高主要是因為完善程式可以蒙,如果留空留得刁鑽一些,可能廣東分數線只有50左右。

 

複賽:

考前幾天一直在複習演算法,考前幾小時重新看了一遍演算法競賽進階,有種抱佛腳的感覺。。

考完出來後就感覺要涼,私以為是近幾年來pj最難的一次。

開考後開啟題目花了近五分鐘。下意識點開c盤裡找,一直都找不到比賽檔案,最後還是全域性搜尋檔名才發現東西都在d盤裡,解壓又出了一點小問題,導致一開始心情就沒有那麼好了。

按照pj的試題難度分佈慣例,我打算t1t2做一題看一題,做完後看一遍t3t4再決定做哪一題。

T1一如既往的水,getline再遍歷一遍輸出即可。

T2大模擬,不過要注意一下精度問題以及分類討論求解,還是考細心為主。

前面兩題做完後又檢查了很多次,一直做到了15:20左右,感覺這個時間有點太長了,下次還是需要縮短一些。

看完後面兩題題面之後,最先想到的就是t3dp,t4除了暴搜+剪枝以外,沒有任何思路,於是決定先做t3。(其實我應該先做t4才對,不知道當時腦子怎麼就抽了。)

T3狀態不好想,想了半天ac做法無果,就打算換思路騙分,弄了離散化+半個單調佇列去優化dp,結果不知道是編譯器的問題還是系統變數的問題,各種莫名報錯出現。先是用命令列讀入會出錯,改檔案流來除錯程式很麻煩;後來又是某些函式返回值奇特,當時想著應該是前面的語句導致執行出錯,只是系統沒有中斷程序而已。一行一行程式碼註釋去測哪裡出錯,還是測不出來,只能自己亂改。搞完這些都已經是16:49了,無法,只好先放棄這一題。

花了半個小時去寫t4的暴搜和剪枝,記憶化最後因為時間問題還是來不及加,草草除錯了一遍,看到過了兩個小樣例後就回頭做t3,那個時候是17:42。遺憾的是,直到考試結束還是找不到t3程式莫名re的原因在哪,來不及重構程式碼了,只好把這個八成會爆0的程式碼交上去。

最後十分鐘監考老師提醒,才發現有考生注意事項的檔案,估計是剛開始太急沒看到。本來想問程式存到哪裡,才發現是要放到d盤(汗)。

最後半分鐘,平復心情,估了一下分,感覺要涼,心態更炸了。

18:00,比賽結束。

出了課室有同學來互探考得怎麼樣,我和同學說了一下我第三題的情況,越說越覺得遺憾,最後還是懶得去講了。

T3莫名錯誤搞得我很不是滋味。因為T3八成會爆0,所以拿一等就有點懸了,沒想到最後還是栽到了cpp的語言特性上了,很可惜。

這次估分應該是100+100+0+0 ~ 100+100+0+40。只能坐等ccf出成績了。

這次考不好的原因,最主要當然是我的實力不夠強,特別是dp需要加強;其次搜尋和貪心的話,因為騙分肯定會用到,所以也需要再去提高;還有最近新學的知識需要鞏固的。論這次發揮自我感覺的話,只要t1t2不wa的話,就算是沒有怎麼發揮失常。

我的時間把控也沒把控好,前面三題花了太多時間(尤其是t3),導致t4根本沒什麼時間去想。

要是再找一個原因的話,那絕對是有關於我的人品。莫名報錯至少浪費了我半個小時的時間在除錯查錯上,時間浪費了也就算了,這更使得我最後一個小時根本沒有一個良好的心態來想題,弄得我t3問題沒解決,t4剪枝也沒寫的很好。

算了,就這樣吧。

 


 

休息了一天再來想昨天的比賽,感覺心情好了很多。oi生涯中的第一次noip終於過去了。如果高中繼續學下去的話,那也是隻有四年的時間打oi了。進了競賽這個圈子,收穫了很多東西,在無數dalao面前,更加能感受到自己的渺小(弱)。在那麼多從小學oi的人面前,我是毫無優勢。若達到他們的高度,我還有非常多需要學習。

這次我是帶著挑戰ak比賽的心態來參加的,t3的dp狠狠打擊了我,t4據說正解是manacher,這個演算法也是完全沒有聽過。考這麼差,明年去參加tg肯定是不可能的,還得繼續打一年pj,希望NOIP2019能夠如願以償

 


ccf出成績,rp爆炸,t4居然ac了。