NOIP 十三連測 #2 補題

起汐Yuics發表於2024-07-15

逆天輸出檔案 .ans

reverse

水題,隨便自己造兩組資料都能看出規律:

\[\begin{cases}a_n a_{n - 2} \dots a_1 + a_2 a_4 \dots a_{n - 1}(n \mod 2 = 1) \\ a_n a_{n - 2} \dots a_2 + a_1 a_3 \dots a_{n - 1 } (n \mod 2 = 0)\end{cases} \]

logistics

先求出最小生成樹的 \(n - 1\) 條邊,與新加入的 \(q\) 條邊排序後比較然後再做 Kruskal。

sequence

從火柴排隊一題借來一個重要結論:正序和 \(\geq\) 亂序和 \(\geq\) 逆序和,rxz 教過微擾法的證明。

那目標就很明確了,我們設 \(a'\) 為最優排列,則對於目標序列 \(a'\)\(b\),可以發現若 \(b_i\)\(b\) 中第 \(k\) 大數,那麼 \(a'_i\) 也需要是 \(a'\) 中的第 \(k\) 大數。

記錄原序列 \(a, b\) 上各個元素的排名,按值排序,模擬交換操作即可。

補題的時候幹了 WA,記得 int * int 取模有可能爆,切記步步取模。

magic

不做人了。

反正就是一些魔法變成了經典放石子問題。

image

int 爆麻了,#define int long long 邪教拯救世界

傻逼 long long 要多取一次模

相關文章