【遊記】2020聯合省選

說在前面

今年的省選是在本校考的,非常幸運。但俗話說得好,禍福相依。

day  0\tt day\;0

最後一個突擊衝刺的夜晚,天上一顆星星也沒有。機房裏是幾個年輕人,其中的一位正在複習 NTT\tt NTT ,他還沒有意識到將要到來的考試是個滅頂之災。

我們的教練顯然並不相信臨陣磨槍的能力。今天晚上,我們一起看了愛爾蘭酒後 yy\sout{\tt yy} 笑話,大家一起在喊 yeah\tt yeah ,沒有想到明天就全是 Oh\tt Oh

今天晚上好像睡得蠻不錯的,希望明天的 T1\tt T1 能夠搞定。因爲我的水平只允許我完成 T1\tt T1 呢。

day  1\tt day\;1

考慮到時間很充裕(後來證實並非如此),先玩了一會兒樣例,發現有誤……

然後發現把冰人跟火人搞反了。森林冰火人請原諒我

此時剛過去半個小時左右吧,已經有了個三分的思路。因爲目的就是,令 min(a,b)\min(a,b) 最大,a,ba,b 分別是冰人、火人的能量和。長的是個尖尖角。

三分完之後需要一個求和,大概是平衡樹可以完成的任務。複雜度 O(nlog2n)\mathcal O(n\log ^2n) ,啊這,n106n\le 10^6 ,還專門不開 -O2\text{-O2} 是不是要卡常啊?

仔細想想,最高點一定在二者相等時取到,因爲不等時可以調整使其更優。那麼有個二分的思路,用 aba-b 作爲函數值,找其零點。

這玩意兒可以直接在平衡樹上二分了唄。加減冰人、加減火人,都是區間修改,但是函數一定保持單增。

此時時間過去了一個半小時。確實是稍微慢了一點,但是思路應該是沒有問題!

……

此時時間過去了四個小時。心態崩了。大樣例過不了。想家了。半個小時的倒計時,彷彿血的沙漏,要一滴一滴地流乾。

平時都沒有遇到過調不出題的情況,何況是有兩個半小時的充裕時間。sxy\tt sxy 是機房的另一個大佬,平時都是我幫他調題的。這一次,竟然是他成功了!

究竟是人性的扭曲還是道德的淪喪?我噙住淚水,忍痛改回了 O(nlog2n)\mathcal O(n\log^2 n)

……

若時間倒退回還剩兩個小時前(也就是 T1\tt T1 開始寫了 1h1\text h 後),當時我正在猶豫,究竟應該做些什麼。我看看 T2,T3\tt T2,T3 ,感覺 T2\tt T2 是推式子的(卷積一類?才複習了 NTT\tt NTT 的我希望如此),而 T3\tt T3 是完全不可做的,即使會線性基也不行。T2\tt T2 小推了一下,只覺得 f(k)f(k) 令人沮喪至極。

仔細思考了一下,感覺 T1\tt T1 是決定 day  1\tt day\;1 得分的關鍵。沒得說了,必須調出來!

……

改回了 O(nlog2n)\mathcal O(n\log^2 n) ,至少過了大樣例。T2\tt T2 匆匆寫了一個暴力,非常暴力,甚至忘了用楊輝三角。

day  1\tt day\; 1 之結局

跟同學們討論了一下,其他人都覺得完全不可做。XEZ\tt XEZ 倒是說了 T2\tt T2m=0m=0f(k)=a0f(k)=a_0 時,有二項式展開的部分分。然後他們又說,組合數會爆,必須寫楊輝三角。

我的組合數是個啥呢?硬乘,硬除。教練直呼內行

我想,我完了。XEZ\tt XEZ 這樣高度概括了我的 day  1\tt day\;1 ,他的原話是:“你這個××\times\times!你怕不是個××\times\times吧!”

提示,××\times\times 與沙壁同音。我想,大樣例過了應該沒問題,6060 吧,等死。

day  2\tt day\; 2

抱着必死的決心,我戰戰兢兢地坐到了位置上。我唯一的希望就是,要把題調出來!

題目一看,T1\tt T1 的複雜度已經暗示的足夠明顯了,肯定是狀態壓縮。但是一開始根本沒有想到,於是又往 T2\tt T2 看。

T2\tt T2 是極其複雜的,直到現在我知道了騙取 8080 分的做法,還是感覺非常毒瘤。

當時也考慮了拆位,也幻想過往上算貢獻,最後的結果卻是一條鏈、vi=1v_i=1 都搞不定。

T3\tt T3 卻蠻不錯,可以拿 5050 分,因爲矩陣樹是顯而易見的。但是當時想錯了,以爲 wiw_i 爲質數也能處理。

最後的一個小時,我突然意識到 T1\tt T1 的貢獻是可以拆開的,就可以使用狀壓。複雜度 O(m22m)\mathcal O(m^22^m) 是平凡解。又意識到權值可以預處理,就改成 O(m2m)\mathcal O(m2^m) 了。

day  2\tt day\;2 之結局

感覺可以過 80+10+7080+10+70 ,後來經 zxy\tt zxy 提醒就變爲了 80+10+50=14080+10+50=140

給我媽打了個電話報喜,因爲我說的是第一天考砸了,今天干得漂亮。

還真是幹得漂亮呢。

最後的最後

然後我的真實得分是多少呢?😃

0+0+0+0+10+30=400+0+0+0+10+30=40

人傻了,我就是從這裏跳下去,死外邊,也不會再碰 OI\tt OI 了。

明年見。


附錄

day  2  T1\tt day\;2\;T1 是死在了空間上,預處理的權值數組開爆了。

哪個死出題人又卡空間又不開O2

day  1  T1\tt day\;1\;T1 尚待勘探。day  2  T3\tt day\;2\;T3 不明不白。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章