1. 程式人生 > 實用技巧 >All Last —— NOIP 2020 遊記

All Last —— NOIP 2020 遊記

終究還是 AFO 了啊……

正序開題。T1 一眼拓撲排序。還在分數處理方面卡了一會兒……好在半個小時就過掉了。期間以為給的限制 不超過 10 條邊 是為了防爆 LL,就沒管了,沒想到是告訴你要開高精……

T2 卡了一會兒,一開始以為是在 fail 樹上亂搞,發現很不可做的鴨子。

期間出去上了個廁所,回來先把 T4 的 30 分爛分恰了。

回頭康 T2,發現沒那麼麻煩,可以直接被雜湊草過去,\(O(Tn \log n + T26n)\) 的複雜度好像沒啥問題…… (好吧最後應該只有 84-96 分)

接下來死磕 T3,大概還剩個兩個小時。十幾分鍾後想到了一個 \(O(nm^2)\) 的做法,然而應該只有 40 分。大概又畫了半個小時想到了一個 \(O(n^2m)\)

的方案,寫的好的話可能有 70 分的高分。然後就開始碼了。

直到最後也沒調出來。回家看原來是 \(\texttt{Swap}\) 函式裡面出了鍋:

+ col[b][++top[b]] = col[a][top[a]]; --top[a];
- swap(col[a][top[a]], col[b][top[b]]); --top[a]; ++top[b];

其實這個函式就不應該命名為 \(\texttt{Swap}\),真不知道當時是怎麼想的,命名為 \(\texttt{Move}\) 我也不會寫錯啊……(看到函式名下意識就寫交換去了)

改了之後就有 40 分了(低於預期啊,看來常數過大)

最後應該就是 200 分出頭了,這下子只能退役,省選的 30% 佔權我這裡就丟一大半。


upd on 2020/12/18

最終得分 90+84+0+35=209,沒有掛分。全省 35 名左右,排名略好於預期。

最讓我驚訝的是,如果 T3 的 40 分拿到,249 分可以進全省 top10。

看著螢幕上的 Ranking,我的內心在發抖。

我才發現自己從來沒有離夢想如此接近過,可惜這個世界上沒有如果。


再盛大的筵席也會散場

再輝煌的傳說難免終章

只留下掘墓人 空自銘刻

歷史潮流不變數

楊柳依依渡口 汽笛鳴響

廿時廿分桅杆分斜陽

路人司空見慣 百舸爭流這繁華景象

素樽對月 數人扁舟無定揚帆自起航

管他身後看客 身前風波熙熙並茫茫

Thank you, OI (2015 - 2020)