1. 程式人生 > 其它 >2022-12-5 #4 泥濘步履踏碎淚泊 擁向光如抱薪赴火 妄想著永不分離的夢

2022-12-5 #4 泥濘步履踏碎淚泊 擁向光如抱薪赴火 妄想著永不分離的夢

調整了一下歌單,嘗試聽一些比較積極的歌調整心態。

今天也沒有心情做題,隨便寫一些之前做過的題吧。

11-30 日 vp:2022 ICPC Jinan Site

15 J Skills

可以發現,一個技能一旦開始學,就不會停止學超過 \(O(\sqrt t)\) 天。

於是記錄一下每個技能有沒有開始學,以及上回合沒有學的兩個技能分別停了多少天即可。

一個實現技巧:記錄上一次學習的技能編號 \(c\),將三個技能重編號為 \(c,c+1,c+2\),這樣轉移會很好寫。

16 L Tree Distance

找支配對的技巧非常經典,序列上性質比較好,可以直接用單調棧找。

樹上考慮使用點分治,對於每個越過分治中心 \(u\)

的支配對,我們在距離 \(u\) 較遠的一個位置考慮其。可以發現,我們只需讓 \(x\) 與距離 \(u\) 不超過 \(dis(u,x)\) 的點中前驅、後繼配對即可滿足要求。若與某個比前驅編號小的點 \(y\) 配對,將 \(y\) 與前驅配對不劣。

最後對這些支配對做一遍二維數點,複雜度 \(O(n\log^2 n)\)