GDOI2020 游記


Day 0

上午碼力全開 一連切了一堆模板題

希望考場上不要忘吧QAQ

坐了2h的車到廣州,到了酒店發現位置似乎很偏。。。附近根本沒有什么超市餐廳什么的

晚上還是在寫模板題。。。

Day 1

看了下題 感覺T3不太可做。。。T2打算過會有時間再來推

於是先去寫T1

第一眼看起來好像是三分最佳溫度?然后寫&調了1.5h左右(現在就是后悔)

發現這個函數平的地方太多了,三分很難找到最高點。。。

於是決定先去寫下T2的部分分,避免調T1調到考試結束

花了20min寫了subtask1(暴力)和subtask2(Lucas定理),30pts

沒去推式子,都是直接模擬的 考試結束之后想想m=0的式子似乎不是太難推,就是個二項式定理。。。但是也就多10pts

不過考完看了題解 什么第二類斯特林數,下降冪 似乎根本沒做過這類題啊 我太蒻了

更搞心態的是考完發現好像人均爆切T2?

T1發現三分不可做,於是決定換一個思路

想了一會終於想到 直接二分找中間的斷點就是最優解了。。。感覺自己被一道思路這么sb的題卡了這么久

距離考試結束只有2h了 感覺今天要0題AC退場了。。。

然后寫T1,發現自己只會\(O(n\log^2 n)\)的樹狀數組套二分。。。

寫出來發現還要找到最優溫度區間內最高的溫度 這個好辦 再二分往后找一下就行了

寫完趕緊拍了一下,萬幸最后是拍上了

抱着常數小的僥幸心理測了一下極限數據 跑了10+s。。。於是放棄卡常了

然后回頭看了一眼T2,T3,感覺還是非常不可做的樣子。。。

再來想想T1的\(O(n\log n)\)做法 感覺應該是在線段樹上二分(實際上確實是)

但是怎么二分找斷點?想到可以維護冰火的差值 然后找最接近0的位置?

於是去碼了一下 寫完發現雖然斷點是找到了 但是並不會找最高的最優溫度。。。似乎還要再寫一個線段樹上二分?

發現自己線段樹維護的東西不太對 應該要維護最大最小值比較方便。。。

然后此時只剩15min了,想到就算寫完線段樹還要調半天,於是很無奈的把之前拍過的60分做法放上去了。。。希望CCF能放我幾個點過去?

要是T1開場沒浪費這么多時間 多30min說不定能把T1調出來。。。感覺這場這個分數低於預期了

出來之后本校神犇說大眾分160?感覺自己可能是GDOI2020墊底選手

期望得分60+30+0

奶一口明天有字符串和樹論

Day 2

兩天的密碼都是隨機串。。。不過都一次輸對了

看到T1「信號傳遞」。。。總覺得昨天在哪見過這個標題?

看題 \(m\le 23\)一眼狀壓DP 考慮怎么壓狀態糾結了半天 最后口胡了一個\(O(n^22^n)\)的DP 兩個小樣例都過了?

我:就這?

然后拍了一下 居然拍上了。。。我自己都不知道這個DP正確性怎么證。。。

然后花了半個多小時把DP優化到\(O(n2^n)\)。。。但是常數爆炸,空間爆炸 預處理的時候開了4個輔助數組

再拿回去拍,試圖把對拍的數據增大一點 WA了?突然慌得一匹

然后發現其實是暴力程序的數組開小了。。。

\(m=22\)的點跑了2.4s 感覺80分很懸?

而且數組大小爆炸 自己算了一下開了480MB。。。限制是512MB 希望不會MLE(應該用不到這么多就沒關系吧?)

upd: 用lemon測了一下 雖然似乎不會MLE 但是\(m=22\)的點T掉了啊啊啊啊

T1大概一共花了90min寫完\(O(m2^m)\)+對拍

然后看了一下T2 T3

T3是那個什么矩陣樹定理?沒學過,告辭

T2似乎很可做?但是不知道把區間全部數+1之后異或和會怎么變

手推了一下發現可以維護\(\log n\)個桶記錄每個數模\(2^i\)的余數,然后就可以\(O(\log n)\)處理區間+1后異或值的變化

然后發現套一個樹上啟發式合並就可以做到\(O(n\log^2 n)\)了 眾所周知dsu on tree的常數不大 於是寫了一下 大樣例又是直接過?今天rp++啊

測了極限數據發現2.1s。。。然后發現取模\(2^i\)可以改成按位與\((2^i-1)\),然后就變成了1.8s。。。感覺還是很懸 但是沒辦法了

花了10min寫對拍 完美的拍上了 就沒去管了 感覺應該能AC?

中間其實碼了挺久的 我的算法細節比較多 寫完這題差不多還有1h多

然后看一下T3 10pts顯然可以暴搜

第二個subtask是樹或者基環樹 基環樹可以枚舉斷邊

然后很蠢地寫了dfs找環+線段樹計算gcd

出考場后一眾神犇:為什么要寫線段樹?不是最多才30條邊嗎?暴力枚舉斷哪條不就完了?

寫了100多行拿到了30分

然后剩下30min基本就是在思考T1能不能優化到\(O(2^m)\) 感覺不太可做 但是就算常數奇小 \(O(m2^m)\)真的能過\(m=23\)嗎?

不敢寫register。。。萬一CE爆零怎么辦?

然后沒有得出任何結果 於是就盯着對拍程序等到考試結束了

期望得分70+100+30 希望T2不要被卡掉。。。

upd:完了 測了下鏈 發現T2桶數組開小了 如果點權卡滿的話 鏈的兩個點都要掛掉了 n卡滿的點也不一定過得去。。。感覺要70+40+30原地爆炸了

被洛谷陰間數據卡到30分。。。這點權怕不是全是500000吧/jk 隨機點權應該能有60?

6.23 upd:果然D2T2還是被卡爆了。。。總分60+30+0+80+30+25=225

D2T1比預想的高10分?真就少爺機唄 D2T3蜜汁WA了5分

最搞心態的是 如果D2T2數組沒開小就AC了。。。295->225

反正295也不是個多高的分數。。。

番外:

你們可能不知道GDOI考到600分是什么概念

我們一般只會用兩個字來形容這種人:神犇!

我經常說一句話,當年您能 AK GDOI,我GDOI切一題不是問題。

埋伏他一手,這個Day1不能做,這個Day1不用做,我切Day2。

反手奶一個超級樹論題,悶聲大樹論。他真出超級大樹論?但是不用怕,他的題孫不了我。點權值加深度,異或和,很牛逼這個題,如果把這個題換成模板題,我這把將絕殺,但是換不得。

n<=500000,,直接套啟發式合並。

敲一份代碼一遍過樣例。對拍快點,對拍,暴力程序你n<=5000都跑這么慢嗎?暴力程序你快點啊!對拍別磨磨蹭蹭的。

對拍爆出WA了。暴力程序寫錯了,應該這么寫的。

給出題人倒杯茶好吧,出題人給你倒一杯卡布奇諾。

給出題人倒一杯卡布奇諾。開始你的毒瘤數據秀!卡他,卡他,漂亮!(悲)

20個數據點你能秒我?你能秒殺我?你今天能把我卡到30分,我!當!場!就把這個電腦屏幕吃掉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM