FFT,NTT,MTT不是前置知識嗎?隨便學一下就行了(雖然我到如今仍是不會MTT,exlucas也不會用) FTT總結 NTT總結php
若是一個多項式$f(x)$在$x0$時存在n階導(就是能夠求導$n$次),那麼能夠換成下面這樣的一個式子: $\begin{aligned}f(x)&=f(x0)+\frac{f^1(x0)}{1!}(x-x0)+\frac{f^2(x0)}{2!}(x-x0)^2+...+\frac{f^n(x0)}{n!}(x-x0)^n+\xi\&=\sum_{i=0}^n \frac{f^i(x0)}{i!}(x-x0)^i+\xi\end{aligned}$ 實在是不想寫MathJax了,蒯一波yyb的html
反正餘項$\xi$趨近於無窮小(由於$n$趨近於無窮大),而後就能夠忽略了.數組
而後若是$x0=0$的時候就能夠直接搞了。函數
最多見的就是$e^x$,由於這個東西是能夠無限求導的.spa
套到以前的式子裏面就是:code
$e^x=1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!}+...$htm
不會證實,背背公式就行了。 $B_{t+1}(x)=B_t(x)-\frac{F(B_t(x))}{F'(B_t(x))}$blog
隨便推一下就能夠了。 就是考慮$A$爲原來的,$B$爲逆數組; 這個東西能夠套到牛頓迭代的式子裏面去,而後就沒了。字符串
挖坑待補(通常性都不要用)get
給出一個數列$a_0,a_1,a_2,...$
它的OGF就是 $$ F(x)=a_0+a_1x+a_2x^2+... \ =\sum_{i=0}^{\infty}a_i*x^i $$
給出一個數列$a_0,a_1,a_2,...$
它的EGF就是 $$ F(x)=\sum_{i=0}^{\infty}\frac{a_i}{i!}*x^i $$
咱們發現若是把斐波那契數列弄成一個生成函數的話,很顯然就是:
$F(x)=0+1x+1x^2+2x^3+3x^4+...$
而後咱們同時乘一下$x$
$F'(x)=0+1x^2+1x^3+2*x^4+...$
而後裂項一下就是:
$F(x)-F'(x)=0+1x+0+1x^3+1x^4+2x^5$
而後這樣子就變成了:
$x+x^2(0+1x+1x^2+...)$
也就是說:$F(x)-F'(x)=x+F(x)*x^2$
發現這是一個好東西:
$F(x)-x*F(x)=x+F(x)*x^2$
而後移一下項就是:
$F(x)*(x^2+x-1)*F(x)=-x$
發現咱們要求的是$F(x)$,就能夠寫成:
$F(x)=\frac{x}{1-x-x^2}$
這個東西求的話仍是線性的,考慮接着化簡
最後就是這麼一個爛玩意:
$fib_n = -\frac{1}{\sqrt5}(\frac{1-\sqrt5}{2})^n + \frac{1}{\sqrt5}(\frac{1+\sqrt5}{2})^n$
咱們發現EGF的公式多除了一個階乘,也就意味分子多乘了一個階乘,那麼階乘在排列組合下的意義是什麼?
順序,因此EGF和OGF的應用也就出來了:
引例:
1.如今有A,B兩種物品,A中的物品只可以取奇數個,B中的只能取3的倍數個,求取n個有多少種方法(忽略取出的順序)
考慮講這兩個寫出來就是:
$A(x)=1+3x+5x^2+...$
$B(x)=0+3x+6x^2+...$
而後把這兩個捲起來的第$n$項就是答案
2.如今有A,B兩種物品,A中的物品只可以取奇數個,B中的只能取3的倍數個,求取n個有多少種方法(考慮取出的順序)
考慮順序的話就是EGF,仍是像上面同樣寫出來
$A(x)=\frac{1}{1!}x+\frac{1}{3!}x^3+\frac{1}{5!}x^5...$
$B(x)=1+\frac{1}{2!}x^2+\frac{1}{4!}x^4+...$
而後咱們就能夠感受這兩個東西和咱們以前有一個很像:
$e^x=1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!}+...$
不是嗎?
而後考慮$x$與$-x$的展開和這個東西好像截然相反...
而後搞一下就行了.
因此:
$A(x)=\frac{e^x-e^{-x}}{2}$
$B(x)=\frac{e^x+e^{-x}}{2}$
而後這兩個東西就很簡單了.
例題什麼的蒯一發yyb的不就行了
迴文串匹配
考慮下面的這樣一個迴文串的式子: $s[x+i]=s[x-i]$,顯然$x$是迴文中心,而後考慮$(x-i)+(x+i)=2x$這樣的式子,不難發現就是一個卷積,而後就很簡單了。
考慮只有兩種,a
或b
,分別對於這兩種字母做爲1|0搞一下
按照上面的作法捲起來-迴文串的個數就是答案了.
具體觀看Solution of DAG
未完待續