-
考場瘋狂 兩份 的代碼,死掉了。。。
-
:直接小常數 可以拿 70
考慮可反悔貪心,一個不是最優的策略是每次將這一位加 2,將下一位加 1
考慮反悔,用最快的策略將當前位填滿,並且只需要考慮反悔 的決策
對於 加上 的情況,可以變成加 即用 1 的代價將當前位加 3
對於 加過一個 3 的情況,可以拆成 將當前位加 3,或者拆成 ,用 2 的代價將當前位加 6,維護一下下一位可以用的 3 的個數貪心即可, -
:考慮先對距離進行討論,若 ,那麼答案一定在 另一側的子樹中,否則在鏈上某個點的子樹中,若這個點爲 ,則需要 掉兩棵子樹,並且考慮向上的情況,其餘的只需要 掉一棵子樹或是不 ,用長鏈剖分可以 詢問
考慮向上的情況,需要找到一個點 滿足 ,那麼我們從根開始維護一個到當前點 的最大值,在那個最大值的點進行查詢即可,瘋狂碼就行了 -
:考慮限制是 ,我的做法是考慮建一個 和一個 ,在 樹上枚舉一個 ,考慮對其兒子 ,每個點有貢獻的是後綴數組上的一段區間,我們用線段樹合併維護這個區間就是一個區間加,這樣可以將輕兒子對其它兒子的貢獻算上,重兒子對輕兒子的貢獻是一個區間查詢,輕兒子對自己的貢獻需要容斥掉,瘋狂碼就行了
【省選模擬】20/06/03
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.