CSPS模擬 55


  沒睡醒就考試,藍綬

  考試前我在擦眼鏡

  好像總也擦不干凈?

  就像石樂志一樣一直地在擦

  cbx捅了我幾下,好像想說什么?

  沒睡醒,不理

 

  終於擦完了!

 

  草要考試?

 

  T1 聯

    先離散化,再正面上線段樹

    em,如果你睡醒了知道離散化后值域會翻倍,數組也開成2倍的話是很難不A的

 

  T2 賽

    觀察得知復雜度為nlogn,那么一定是枚舉一個n級別的量,然后log更新答案啦

    三分是什么,我沒想到

 

    莉露露說過:多面手問題要從低能力者下手

 

    可惜我忘了。

 

    嘗試枚舉至少選擇多少高能力者,那么對應得知至少選擇多少低能力者

    分別選擇同一能力類型中花費最小者,剩下的空缺不受能力限制,貪心選花費最小的

    

  T3 題

    正..解..是..什..么..啊..

    拿20分走人

 

    思考的起點應該在於:一個點最后存活,必須以犧牲一個點集為代價

    然后需要想到每個點對應一個極小點集,如果要兩個點都存活,那么他們兩個的點集不能有交

    即:我的犧牲品只能為我而犧牲

    考慮如何求出每個點對應的點集

 

    在此之前,有些點是犧牲全世界也活不下去的

    所以設$f[state][k]$為 考慮第1~k條邊,state表示點集的有沒有可能全部存活

    $f[{p}][m]$即為每個點最后有沒有可能存活

 

    然而我們並不需要求出f數組,限於數據范圍也不可能求出所有f數組

    我們只關注每個點最后活沒活,也就是我們只需要$f[{p}][m]$

    考慮逆向尋找,分第k條邊在state集合中端點的數量討論

    狀態是鏈式的,所以復雜度$nm$

    

    最后$n^2$枚舉點對,只有點對的兩個點的f都為1且對應點集無交集時合法

    還是那句:我的犧牲品只能為我而犧牲

 

    (中二並氣息)


免責聲明!

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



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