1. 程式人生 > >NOIP2018遊記(完結!)

NOIP2018遊記(完結!)

註定是人生中最後一次OI比賽了,寫此遊記來紀念一下!

Day -48:

晚自習沒事幹,預測了一下初賽複賽考要什麼

Day -31:

初賽,事實證明Day -48預測全部失敗…
然後得知很多震驚的訊息
1.我省某中學多買了幾十個人的名額,然後就在那個中學開了考點,只有他們學校的,分兩個考場,一個考場是充數的,另一個考場全是本校考生,寫閱讀題時,拿上手機把題目拍上,OCR識別為文字,在手機編譯器上直接就編譯出結果抄上去了…
2.河北的考生來山西考試…想幫忙拉高山西的分數線嗎?
3…
發一下初賽的題目和答案吧C++的:傳送門 提取碼:7k91

Day -30:

昨天剛考完初賽,寫一個初賽的總結吧…
一:選擇
T1:【答案:D】進位制轉換,很簡單嘛,先拿二進位制開刀,簡便計算轉為八進位制,十六進位制一比較可得答案,然而我連這道題也算錯了…
T2:【答案:D】我用的就是C++,每天編譯的時候就卡死,還能不知道C++是編譯型的了?然後就是C,同C++,Pascal比C的年齡還大,直接排除選D
T3:【答案:B】歷史政治題,考前還開玩笑說要上NOI官網複習政治題,但天真的我只看了17-18年的公告,秒炸…
以下是原文

來自NOI官網

1984年鄧小平指出:“計算機的普及要從娃娃做起。”中國計算機學會於1984年創辦全國青少年計算機程式設計競賽(簡 稱:NOI)

更不開心的是用2018減去卷頭上的屆數算下來+1是NOIP的初創年份而不是NOI的…(F***)

T4:【答案:A】首先令其為二叉樹,然後令h=1,2,3,4代入出答案
T5:【答案:D】很久以前的一道NOIP原題,跳過
T6:【答案:B】NOIP2015,2014…都有,寫成二叉樹,然後先根遍歷即可
T7:【答案:B】什麼鬼數學期望,不會不會(待更新…)
T8:【答案:A】一看卡特蘭數列…學過!!!,不記得公式了,不過沒考,用處還記得(當年證明了很久沒出來…),直接選D,沒看見是選錯的,爆炸…
T9:【答案:D】這個的話,先寫幾個,一次抽中概率2^ -1 ,紅色一個 ,兩次抽中概率2^-2,紅色一個,藍色一個……以此類推,然後個數乘概率,每一種情況都是一個類似等比的數列,當然一眼看出通項公式,定積分(很難求),比一下出結果為1,然而網上有一個神奇的方法:
在這裡插入圖片描述


T10:【答案:D】很簡單的二進位制列舉子集的部分程式碼,考試想多了,直接炸…
T11:【答案:AB】這個考前給我們宣讀了考試須知,裡面有…
T12:【答案:CD】考場上直接列舉…(待更新…)
T13:【答案:ABD】CCF想要鞭屍SPFA???..還是炸了
T14:【答案:ABD】這個…想一想就出來了
T15:【答案:BCD】以前考過的題,但是我一直記得中國只有一個女的獲得了圖靈獎,於是炸了…
二.填空
T1:NOIP是瘋了嗎…?
T2:不會,這道題是“九條可憐”老師出的,原來的資料是1024,被改成了32,明擺的讓列舉,據說真的有人ΣΣ嵌套出來了…(待更新…)
三.閱讀
T1:直接算就行了,但是一定要記得求餘和加減乘除的優先順序,否則照炸不誤
T2:依舊直接模擬(NOIP的第二題簡單的我有點害怕…一開始一看cur和v的跳轉以為是KMP演算法…嚇的…)
T3:先看magic函式,很想快讀,實際上就是進位制轉換,a=1,b=2,c=3,d=4,然後進位制轉換到10進位制
然後是main函式:l1,l2,r1,r2明顯是列舉兩區間,區間內資料的十進位制一樣就+1;於是手算即可,於是我就傻不愣登的用了半個小時把無數的數轉為了十進位制,一直到考完以後忽然想到一個十進位制數轉換為4進位制數後有且僅有一個數與之對應,所以直接比較四進位制即可…([手動捂臉][手動捂臉][手動捂臉])
T4:我到目前也不會(一看next以為是KMP,我怎麼只會KMP了…),一下是當是的分析:isSmall函式就是英文意思的isSmall…然後getPermutation我到目前也覺得是裸的dfs,然後就是要輸出DFS序中第n的比原數小的排列…(待更新…)
四.程式填空
T1:沒看題目,直接看到這句話:使用雙向連結串列求解了答案,於是就根據雙向連結串列定義是對稱的,看了一下輸入輸出直接出答案。
T2:dp???根據題目搞了搞就出來了。

總結

1.與NOIP2017相比題目難度稍微有所降低,表現在簡單題目更簡單,難題更難
2.程式填空演算法性質較強,比去年的模板題好多了…
3.降低資料結構理論的考察,去年的時間複雜度沒把我寫死
4.新定義增多,考察思維的題目增多
5.數學裡面神奇的只是變多,莫非是要和去年的複賽看齊
NOIP2018 RP++;

Day -12

剛剛交了複賽的報名費…漲價了,買了火車票,訂了酒店,看了一下全省的成績單,多買名額的那個學校並沒有考好,河北的那幾個考生都是50左右,不知道進複賽沒有…不過感覺自己也很慌兩個星期沒動電腦了…
做了個夢有點害怕…夢見NOIP2018考前突然改了語言,要求所有人用Java寫程式…而且每人發了一本NCRE的二級Java教程,讓現學現敲…解釋型語言…想想就害怕…
被自己的夢嚇醒了,然後想到去年的小凱的疑惑那道題,於是突發奇想如果今年NOIP如果出了像小凱的疑惑的那道題,我想是不是可以打出一堆輸入與輸出然後把輸入和輸出放到Excel裡面做成表格找規律。。。。
於是就在百度上找Excel找規律…
還真有…
震驚!NOIP考前12日,某蒟蒻在瘋學Excel…
附一首詩:

深夜·北京
周圍的燈都熄了,那個視窗仍透著光。
幾個人,一張辦公桌,一臺電腦。
熒幕上的游標,靠近著一個圖示。
幾個人都瞪大雙眼,屏住了呼吸。
滑鼠嗒嗒的輕響,打破了屋內的靜。
一個文件出現在熒幕上。
它在變大。
它在增長。
隨著程式的結束,文件被立即開啟。
幾百萬個六位數字映入眼簾。
像爬在電腦屏上的螞蟻。
好像永遠也數不完。
坐在最靠近螢幕前的人扶了下眼鏡。
靈活敲動著鍵盤。
文件編輯完畢,他的嘴角微微上揚。
“看我這次卡不死你們。”
——NOIp2018 考前三週 祭

Day -2

曠課(而非停課)刷洛谷

Day -1

曠課(而非停課)刷了一套原衡水大佬(現清華)Liu_Runda的模擬題,忽然不想去考試了…
第一次被爆swap…

Day 0

打模板,研究Excel 2003…
坐火車去臨汾一中(臨汾站的設計就是照抄太原武宿機場做的)發現很多高一巨佬…,簽名留念,試機(螢幕是正方形的…鍵盤很古老…),然後到酒店,出去吃了碗米線,據說臨汾一中食堂飯炒雞好…,回酒店,網速很好,但DNS很渣,唯獨CSDN和洛谷用不了…WTF??
於是開了手機熱點
祝我Rp<<= 1;
半夜看到據說T1要考樹剖

Day 1

可能我的Rp溢位了吧…
去考場,敲了一個快讀,一個dijkstra,一個檔案,一個快速冪…
拿到題目,密碼是:飛雪連天(Day2是笑書神俠?),處理器:i7…???
拿到T1…積木玩具???,於是就想用差分陣列,算了,還是用樹狀陣列吧,不過維護不了呀?線段樹卡常怎麼辦,最後還是謝了一個差分。
T2和T3一起看完,T3有一個最小值最大,於是定了T3是樹形DP,考慮T2,感覺是二分,於是我發現我連gcd都不會寫了…亂搞完T2
T3…當然沒有時間寫,直接輸3個樣例
中午去吃飯,飯店差評,然後得知了T1線段樹秒過大樣例…知道了T2是完全揹包…T1正解是遞推…T3是二分+樹形DP
下午,去買衣服,去電玩城…
發現閱讀量上4W了!!!
然後是押題:
1.倍增
2.大大大大模擬
3.貪心
4.字典樹
5.拓撲
6.貪心
7.嚴防高精爆表,D1沒有開long long的題目!
發一個題目:https://pan.baidu.com/s/15-raSnHVudbDLAiqgEdbvw

Day 2

圖巨來考場了…但是沒有面基
發一下題目 :https://pan.baidu.com/s/1744Nzq2gmxY1RPl335vb-g
去找校車點,校車真的是公交車…
車上各種押題…
很好,Day 1押題的內容全沒壓上…
進考場前吧區間預處理逆元的公式抄在紙上,然後,進考場,監考直接鎖了鍵盤,敲不了板子了…
然後就是各種聊…
再之後就是拿到解壓密碼:笑書神俠…
看題,第一個看了半天,裸DFS…?
不太對
看T2,樣例給了2,3,5沒給4,明顯是不讓你找到規律…
看了一下T3,好像NOIP2012D2T3疫情控制那道題,沒時間寫…
忽然發現T1不就是尤拉路徑…?
於是放心的打了DFS…
結果結構體寫的鄰接表的init忘了呼叫的一直段錯誤,一直除錯,沒發現…一個小時就這麼過去了…
然後是T2,蒟蒻當然不會了…於是手算了33的資料,然後打表,忽然想到我這桌面上還有一個Excel2003,於是我就把資料放在了Excel上,插入了一個三維圖表…貌似有規律,於是用自動填充拉了一下,還是看不出來…於是就把810000的資料全部自動填充出來,扔到原始檔裡面,溜…
T3當然沒時間寫,直接出樣例,結束
11:55準備提交,發現臨汾一中校園內網爆了,提交速度奇慢,於是全校重啟伺服器,重啟交換機,還是不行,於是用U盤拷檔案…
因為重啟伺服器,拷檔案等了半天,差點誤了火車,連簽名牆都沒拍下來留念就走,滴滴還是比較快的…正好到站…
於是,我的OI生涯就這麼結束了…
2018/11/11 14:15:43
在D5308上

Summary

不想寫了,只想說五點
1.OI最好是有人帶著學的,即使想我我沒一樣沒有教練的學校也可以找找老師去聯絡一下外校的老師,不要像我一樣低估了老師的朋友圈…可以去旁聽一下。
3.學習的時候把儘可能的多的題目都自己程式碼實現了,防止手生,想我一樣打個領接表忘呼叫init()調了一個小時,即使是像我們學校一樣的寄宿制學校,也可以向老師申請去抽時間寫程式
4.演算法老師絕不是計算機老師,不要像我一樣在暑假的時候找了一個二級C++老師,給我講了一個暑假的C++,講了幾個小時的演算法…
5.不到萬不得已不要高三再來考NOIP,心理壓力特別大,並且時間也更緊了,最好在升高三的那個暑假達到最好狀態,開學後只可能退步,不可能進步,像我上了高三以後,碰電腦次數不超過20個小時…

就這樣吧…
再見NOIP…