1. 程式人生 > 其它 >正睿2021遊記

正睿2021遊記

Day0

先鴿一下

Day1

說是雜題選講,其實是 IOI2021 全講

上午太自閉了,就D2T1還行。

下午講了幾個題,大部分時間全在自閉,只有強者還再思考。

感覺只有兩道題可寫。

Day2

期望得分200,實際得分180.

前一天聽dmy說題目很毒瘤,以為只有幾十分。看完題以後感覺T2dp最可做,T1一開始以為是個神仙博弈,T3的40分暴力很顯然。就先開了T2,一開始想用wqs二分每次 \(n\log n\) 處理詢問,寫完以後打算寫一個暴力對拍,發現暴力是 \(q+n^2\) 的,然後 swap(暴力,大暴力)。拍了以後發現 wqs垃圾大暴力寫掛了。然後打算寫20分的模擬費用流,拍了1000多組沒出毛病,穩了

。然後取搞T1,一開始對於 \(n\le10\) 的寫了個類似於 \(\alpha-\beta對抗搜尋\) 的東西,然後看了看樣例感覺dp好像可以整整,寫了一個 \(n^2\) 的演算法,之後對於鏈的情況想到肯定不會走回頭路,直接 \(\max(\{a_{i-1},a_i,a_{i+1}\})\)。然後突然想到 \(n^2\) 的換一下根不就行了?碼了一下,拍了1000組沒毛病,最後寫了T3的40分,估了一下有 200。

丟失的分

T2的模擬費用流,原因:這個題是線上的,每次的詢問要異或上一次的答案,對拍時為了保證資料合法,把異或這一步去掉了(其實是想造資料的時候偷點懶),但是我程式碼裡有一句:

if(vis[abc.second])continue;
ans+=abc.first;//預處理裡面的
h[++h[0]]=ans;

由於不異或的話沒問題,但因為最後要異或,ans沒清空,就掛了20分。