CSPS模擬 63


  每天都考試都快傻了O_o

 

  $T1 Median$

    一看就不能從通項上下手..

    那么就是..給你一個序列..區間中位數..

    對頂堆!

    爆調2h,心態炸裂。

    

    據說根據鬼畜的函數定義和$mod<=len$的瘋狂暗示,

    數列可以看成一個均勻分布的隨機數列,

    而且在值域上還比較稠密,答案變化看作常數級別

    於是指針爆掃

    ???

    好吧下次留意$mod$與$n$同級的情況

 

  $T2 Game$

    考慮游戲的進行過程

    每次只加進來一個數,如果它很大那么直接拿走了,待選集合不變

    否則加進待選集合里,拿個最大的走人

 

    考試的時候糾結於把詢問排序以后,初始元素的增多會造成什么影響

    主要還是對$nk$復雜度沒有信心吧,不相信每個詢問掃一遍就可以

    和T1一樣,總是缺乏考慮維護什么東西的意識

 

    另外為什么不說清楚加不加絕對值的事啊

 

  $T3 Park$

    考場正解沒調出來,挺遺憾的。

    不過考后都調了半天,細節比較多,也幸好我交了個暴力

    

    發現在一條路徑$a->b->c$上,在$b$點放面包造成的差值總等於$v_c + v_{從b伸出去的其他兒子}$

    即$(\sum v_{與b相鄰的點})-v_a$

    那么$\sum v_{與i相鄰的點}$很好預處理,$n^2$暴力就是從每個點開始$dfs$,堆維護路徑上的前$m$大貢獻

 

    考慮$nm$做法,隨便指定根節點,每條路徑都可以在$lca$處並起來

    設$f[i][0/1][v]$表示在點$i$,他從父親節點拿下來$v$個面包后最大貢獻,或給父親遞上去$v$個面包之前的最大貢獻

    每個點掃兒子,分兩種情況(這個點放不放面包)繼承狀態

    統計路徑時直接正反掃兩邊兒子用前綴最大值與當前值結合更新答案就行了

    貌似路徑正好在一條父鏈上的情況需要稍微判斷一下。


免責聲明!

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



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