題解 Luogu P5434 有標號荒漠計數

2022-05-05 16:06:08 字數 1171 閱讀 7482

媽媽我終於會這道題了!

設\(n\)個點的有根仙人掌個數的指數型生成函式(egf)為\(f(x)\), 令\(f_i = [x^n]f(x)\)

對於\(f_i\), 我們考慮欽點\(1\)號點為根, 然後考慮與\(1\)相鄰的是什麼

\(1\)不在環上: 對於這種情況, 我們可以發現與它相鄰的還是一顆仙人掌, 於是它的生成函式還是\(f(x)\)

\(1\)不在環上: 對於這種情況, 我們考慮環的大小\(i\), 那麼去除點\(1\), 它的生成函式就是\(f^i(x)\), 但是考慮到對稱的情況不可取, 實際上它的生成函式是\(\frac\)

由於點邊隨意排列均可, 於是有貢獻為\(\exp(f(x) + \frac\sum\limits_f^i(x))\)

考慮上根, 應該有

\([x^n]f(x) = [x^](\exp(f(x)+\frac\sum\limits_f^i(x))) \times n\)

於是有\(f(x) = x\; \exp(f(x) + \frac\sum\limits_f^i(x))\)

發現\(\frac\sum\limits_f^i(x) = \frac\)

\(f(x) = x\; \exp(\frac)\)

接下來我們考慮直接搞乙個牛頓迭代, 設\(g(f(x)) = x\; \exp(\frac) - f(x)\)

接下來我們有

\(f_n(x) = f_(x) - \frac\)

於是我們爆算得到

\(f_n(x) = f_(x) - \frac) - 2f(x)})\; \exp(\frac)-2}\)

在算出來\(f(x)\)後, 注意到我們f(x)的定義是有根仙人掌個數的指數型生成函式, 為了將其變成無根的, 我們令\([x^n]f(x) \leftarrow [x^n]f(x) \times \frac\)

接下來我們將其變成荒漠, 這一步我們將\(f(x) \leftarrow \exp(f(x))\)即可, 為什麼這麼是正確的, 我們考慮將\(\exp(f(x))\)展開, 有

\(\exp(f(x)) = \sum\limits \frac\), 考慮組合意義, 有\([x^n]f^i(x)\)的意義為選出\(n\)顆仙人掌並排序得到的, 為了消序除以\(n!\)即可

然後就是一道多項式板子題了qwq!

luogu P1816 忠誠 題解

用st表來解決rmq問題。表示同時培訓學的st表,然後我就忘得差不多了,在這裡推薦一篇blog 大佬cym的 自己再 一篇 舉例 給出一陣列a 0 5 則區間 2,5 之間的最值為1。1 離線預處理 運用dp思想,用於求解區間最值,並儲存到乙個二維陣列中。具體解釋 1 離線預處理 st演算法使用dp...

題解 luogu p2078 朋友

並查集 總結 1.求兩次並查集可以用乙個陣列來使用,一次並查集後更新fa陣列即可 2.求兩個值的是否是一樣的祖先時,用find 不用fa陣列判斷,有可能其中某個值的路徑沒被壓縮 3.a,b公司都有可能是男或女 includeusing namespace std intn,m,q,p,a,b,s1,...

中位數題解 luogu P1627

給出1 n的乙個排列,統計該排列有多少個長度為奇數的連續子串行的中位數是b。中位數是指把所有元素從小到大排列後,位於中間的數。輸入格式 第一行為兩個正整數n和b,第二行為1 n的排列。輸出格式 輸出乙個整數,即中位數為b的連續子串行個數。輸入樣例1 7 4 5 7 2 4 3 1 6 輸出樣例1 資...