NOIP2024模擬1

xrlong發表於2024-07-09

NOIP2024模擬1

掉大分,哈哈哈。

好像有的人對比賽評價不太好,我覺得還行,除了 \(4\) 個小時 \(5\) 道題以外。

wang54321:主要是我打的比較唐。

還有經典沒 \(SPJ\) ,但後交的竟然有?

  1. T1 分糖果

    簽到題。

    但沒簽成

    考慮對 \(3\) 取餘,只有四種合法 \(0,0,0|1,1,1|2,2,2|0,1,2\)

    考慮 \(3\)\(0,1,2\) 可以拆成 \(0,0,0|1,1,1|2,2,2\),所以直接列舉有幾個 \(0,1,2\) 即可。

    幾個經典錯解的 \(hack\)

    優先 \(0,1,2\)

    7
    3 1 1 1 2 2 2
    

    優先 \(1,1,1\) 等:

    8
    3 3 1 1 1 2 2 2
    
  2. T2 乒乓球

    碼農題。

    發現顯然有迴圈節。

    發現就算特判了永遠不會結束的情況,也可能會追到很高的分。

    考慮追分以後真正的分值已經沒有意義,直接記錄差值即可。

    預處理出經過一輪後每個狀態的下一個狀態和 \(A,B\) 各贏幾次,在找迴圈節做即可。

    細節不少,大師有一種好寫的做法,就是直接暴力跳,只有在有人贏時才判一下是否已經在這裡贏過了來找迴圈節。

    看似可以卡到 \(k^2\),但考慮在同一位置的同一狀態一定會有同一贏點,所以和上面做法複雜度相同。

  3. T3 與或

    結論題。

    發現對於任何情況,將 & 放在 | 前一定更優。

    可以先前面全是 |,後面全是 & 求理論最大值。

    但是要保證字典許最小,所以考慮將 | 前提。

    挨個位置考慮,如果放 | 後後續最大值依然和理論最大值相等就可以放 |

    求後續最大值可以按位貪心,也可以 \(ST\) 表維護區間 & 加預處理字尾 |(雖然 & | 之間沒有結合律,但各自都滿足結合律,將他們的一個符號前提即可)。

  4. T4 跳舞

    \(DP\) 題。

    考慮 \(dp_i\) 表示到 \(i\) 並且 \(i\) 還活著的最大貢獻。

    發現轉移需要知道是否可以消除 \([l+1,r-1]\) 一段並且 \(l,r\) 還活著。

    考慮用 \(DP\) 區間 \(dp\) 預處理,設 \(g_{l,r}\) 表示從是否可以消除 \([l+1,r-1]\) 一段並且 \(l,r\) 還活著,顯然轉移。

    透過預處理 \(\gcd\) 可以做到 \(O(n^2\log n)+O(n^3)+O(n^2)\) 的。

  5. T5 音樂播放器

    \(DP+\) 結論題。

    首先我們知道,當聽了 \(i\) 首歌后聽任意一首新歌的機率都是 \(\frac{1}{n-i}\)

    考慮其和排列類似,所以聽 \(i\) 首歌的所有情況是等機率的。

    考慮 \(dp_{i,j,k}\) 表示前 \(i\) 首歌聽了 \(j\) 首,總愉悅程度為 \(k\)

    \(x\) 的答案為沒聽第 \(x\) 首的合法(加上其可以超過 \(S\))方案數乘上排列產生的係數除掉總數。

    直接轉移對於每個 \(x\) 都是 \(O(n^2S)\) 的,總複雜度 \(O(n^3S)\)

    考慮提前將所有都轉移了,每次在減掉 \(x\) 貢獻可做 \(O(n^2S)\)

相關文章