可能是 BJOI2019 Day1 題解?


T1

給一個有空白字符的串 $S$,和若干模板串 $X_i$,初始 $Ans = 1$,每當一個模板串在 $S$ 中作為子串出現時,$Ans$ 會乘以 $X_i$ 的權值 $Val_i$,然后如果 $S$ 中出現了 $k$ 次模板串(相同串出現兩次算兩次),貢獻就是 $^k \sqrt{Ans}$,你要在空白字符處任意填入字符,最大化貢獻

$\sum |X| \leq 1500, n \leq 1500$

sol:

首先,你要求幾何平均數,然后你發現沒法求

然后,你發現這是個經典問題,把所有數取個 log,然后幾何平均數就變成了算術平均數

然后,最大化算術平均數,那就是分數規划

A 了這題就能翻到隊線以上...可惜我沒有

 

T2

令 $f_n$ 為用 $1\times 2$ 的骨牌拼 $2 \times n$ 方格的方案數,$g_n$ 為用 $1 \times 2$ 的骨牌拼 $3 \times n$ 方格的方案數,問你 $\sum\limits_{i=l}^r \binom{f_i}{k}$ 和 $\sum\limits_{i=l}^r \binom{g_i}{k}$,膜998244353

$k \leq 1500,l,r \leq 10^{18}$

sol:

打表找規律發現 $f$ 是斐波那契數列,$g_{2n+1} = 0$,$g_{2n} = 4\times g_{2n-2} - g_{2n-4}$

發現 $k$ 是給定的,於是只需要求斐波那契數列的下降冪

下降冪可以用帶符號第一類斯特林數轉換成冪

現在就是要求斐波那契數列的冪之和

然后發現這是個經典問題(為什么這么多我沒學過的經典問題啊)

考慮斐波那契數列的特征方程,令它的兩個特征根為 $A,B$(是兩個帶有 $\sqrt{5}$ 的分數,懶得打了)

然后發現 $F_n^k = \frac{1}{(\sqrt{5})^k} \times (A^n - B^n)^k$

把后面那個東西二項式定理展開

會發現相同的$(-1)^j \times \binom{k}{j}$ 的系數是一個等比數列,記 $D=A^{k-j} \times B^{j}$

則對於 $j$ 來說它的系數是 $\frac{D \times (D^n - 1)}{D-1}$

枚舉 $j$ 計算即可

但比較蛋疼的是 5 在模 998244353 意義下沒有二次剩余,擴域即可

然后發現這個特征方程的做法並不依賴於斐波那契數列,只要它是個由前兩項遞推過來的遞推式就可以了

后面那個東西只看偶數項就是個遞推式,那就...同樣的方法做就可以了,值得注意的是,3 在模 998244353 意義下依然沒有逆元,跟 5 的處理方法一樣

(所以為什么不模 $10^9+9$

 

T3

有一個迷宮,有一些牆,你可以加入牆,刪除牆,或者詢問在一個點一直用左手扶牆走到另一個點的距離

$n \leq 500,q \leq 10^5$

sol:標程 7KB

大概就是你要維護一些環,支持合並,分裂,查詢環上只能逆時針走從 $A$ 到 $B$ 的距離

這個東西用平衡樹按順序維護一下就可以了

一次合並/分裂可以轉化成兩次 split/merge


免責聲明!

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



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