天天看點

【9.11測試爆零記錄】

按照慣例,會兩道題,可是這次居然有一道題寫挂了

終于不是會T2T3不會T1了,這次會T1T2不會T3。

開場掃了一眼,T1一眼長鍊剖分,維護方式還沒想清楚,T2毫無懸念一個仙人掌上背包,T3。。。首先求原根我知道,轉化成名額我知道,然後是一個二進制線性同餘方程,但是要最小化的那個是什麼東西???

T3樣例有問題,上去跟L說了一下,然後閑的蛋疼把手表拿下來玩,結果它表帶斷了。。。斷了。。。斷了(其實就是一個零件彈出來了)。。。什麼垃圾玩意

本着閑的蛋疼精神,我開始修,由于手邊沒有什麼細的工具,沒有修好,還晃到了九點過,此時考試開始一個多小時連某位遲到的都已經到了将近二十分鐘,但是我還什麼都沒開始寫,連題都還沒細想。。。

這時候正式開題,先開T2,因為T1隻有一個複雜度不對的想法,在草稿紙上畫了幾下,對于環的情況大力分類DP,稍微調了一下過了樣例,感覺沒什麼問題(flag)。考場上甚至在想為什麼會給點仙人掌而不是邊仙人掌,結果std隻能做點仙人掌,我的做法才能做邊仙人掌。

這時候距離考試結束還有一個小時。。。

幹T1,啥都不管先把倡廉剖分+配置設定數組寫好,發現詢問是一個區間最大值,考慮能不能做到 O ( n ) O(n) O(n),試了下單調隊列發現複雜度是假的,這時候離考試結束還有半個小時。

發現長鍊上的詢問是一個區間最大值,修改是一個區間的ckmax,但是直接單點的話複雜度是 O ( 鍊 長 ) O(鍊長) O(鍊長)是對的,單點修改區間最大值,ZKW線段樹,長剖加一個dfs序。

事實證明不寫ZKW線段樹在NOI Linux下不可能過,我和std都寫的ZKW線段樹,最慢的點跑了時限的5/6,我看了一下,最快的一般線段樹在OJ上最慢的點用時是我的兩倍。

就是說你辛辛苦苦寫一個複雜度對的算法,到最後,由于常數問題,就算不挂也隻有60甚至40。

常數優化,從小事做起

然後dfs序轉移有些細節寫挂了,調了半天,最後五分鐘過了樣例。。。

沒時間管T3了,T1T2也沒來得及做最後的靜态debug。

然後一測,T1全場爆零,就我一個人A了???

T1寫了正解卻沒寫對拍的人A了T1???

下來一問全部沒有寫ZKW線段樹???

我T2炸成5分???T2全場最高分20???

發現自己加邊的時候for的是點數,由于樣例是一個基環樹才沒有出鍋,但是由于轉移的卷積寫挂了隻有60。但是不管怎麼說我這個算是炸了55分,下來一問,T2考場上嘗試寫正解的隻有我一個???

T3全場爆零???TM什麼毒瘤省選模拟出類歐幾裡得,完全沒往類歐幾裡得方面去想

然後A了T1就rk1了???