逆天輸出檔案 .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
不做人了。
反正就是一些魔法變成了經典放石子問題。
int 爆麻了,#define int long long
邪教拯救世界
傻逼 long long
要多取一次模