數學專題測試3 題解

2022-03-16 19:18:57 字數 866 閱讀 8879

大概的意思是說,由低到高考慮不同的二進位制位。

形成乙個最小生成樹,那麼最高二進位制位不同的情況一定只出現一次。

所以除掉最高位之後的情況形成兩個集合,遞迴下去$dp$就好了。

乙個技巧是,將每個方案的最小值的總和,即$\sum \limits_min(i)$轉化為$\sum \limits_^f(min>=i)$。

然而還沒有改這個題,所以以上都是我在yy。

隱藏的很深的一道題,完全沒有思路。

頹過題解之後會發現並不難,題意要求從首位開始的數是最小的。

也就是說首位的字典序最小。

不妨考慮每乙個迴圈同構串$s$,當這個串存在長度小於$|s|$的迴圈節,那麼無論如何迴圈都無法使首位的字典序最小。

否則,只有把字典序最小的串放到最前面是合法的。

所以只要求出不同長度的不含迴圈節的串個數就好了。

然後就發現這個東西是顯然的莫比烏斯反演,容易發現要求字首和,順便推推式子寫個杜教篩就好了。

容易發現答案是方案數乘對應的多項式,其中方案數是組合數減組合數的形式。

因為組合數中選的個數$m$並不大,可以發現這個組合數實際上是$m$次多項式的形式。

要求的是組合數的平方卷積給定的係數,所以這個玩意將是$3m+1$次多項式的形式。

所以可以通過$ntt$優化插值處理出一些$f$的取值,再通過$f$的取值卷積組合數處理出一些$ans$的取值。

之後直接插值出$ans_n$就可以了。

這樣做的複雜度是對的,然而常數很大所以要瘋狂卡常才能通過。

乙個較好的優化的方法是構造乙個奇怪的函式(使組合數與插值點有關),並且保證在想要插值的點的取值相同。

這個方法就很妙,它把原式中很難維護的卷積$ans$式,變成了乙個可以遞推的簡單$ans$式,於是可以線性處理。

數學專題測試4

看到這個資料範圍多半是高斯消元。所以問題是如何處理出每局的勝率。容易發現平局是沒有意義的,要求的是最大的勝 負,這是乙個分數問題,無法進行簡單加和。所以正確的做法是01分數規劃。通過二分答案,將分母部分直接作減法。於是只要維護最大的分子 k 分母就可以了。本題的第二部分存在乙個直接計算的式子,但是我...

數學專題訓練3

這次是概率專練 選的題都比較基礎。因為我對概率的感覺很不到位啊啊啊啊 題目一 wikioi計算概率 這個就是古典概型嘛。先列舉選的第一根。然後再求出第選二根後和小於等於l的方案個數。然後答案很自然就是 這些方案個數的和 n n 1 了。考慮到n稍大。求方案數不能直接暴力。可以選擇二分來求 要注意選的...

字串專題測試1 題解

顯然只要對位合併,最後查詢不同的集合數就好了。似乎聽過乙個叫倍增並查集的東西,然而考場上沒有 yy 出來。f 表示點 i 以及 i 往後數 2 k 個元素共同被合併的祖先。對於合併操作,直接用st表的思路合併即可。考慮最終的下傳操作 列舉倍增的次冪數,設 i 向後 2 k 個元素的祖先為 f 因為並...