快要省选了,赶紧把数学补一补,这里把基本上所有的反演总结了一下,没有写证明啊(小编不怎么会)。
子集反演
似乎一般在数据范围比较小的时候使用。
形式一(子集内求和)
[f_S = sum _{T subseteq S} g_T Leftrightarrow g_S = sum _{T subseteq S}(-1)^{|S-T|}f_T
]
好像这种形式用的不多。
形式二
[f_S = sum _{Ssubseteq T}g_T Leftrightarrow g_S = sum _{Ssubseteq T}(-1)^{|T-S|}f_T
]
好像一般都用这个,确实长得差不多。
一般就是恰好和至少之间相互转化的套路了。
二项式反演
个人感觉其实是子集反演中的元素无区别的情况,所以一般用的更多。
二项式定理
[(x+y)^n = sum _{i=0}^{n} inom{n}{i}x^iy^{n-i}
]
算是课内数学了吧,不过确实有用。
形式一
[f_n = sum _{i = 0}^{n}(-1)^iinom{n}{i}g_i Leftrightarrow g_n = sum_{i = 0}^{n} (-1)^iinom{n}{i}f_i
]
基本用不到,因为把 -1 的流动过去就变成了形式二。
形式二
[f_n = sum _{i = 0}^{n}inom{n}{i}g_i Leftrightarrow g_n = sum_{i = 0}^{n} (-1)^{n-i}inom{n}{i}f_i
]
这个柿子因为左边没有 -1 ,所以更常用一些。
这个柿子可以理解为至多和恰好吧。
形式三
[f_n = sum _{i = n}^{infty}(-1)^iinom{i}{n}g_i Leftrightarrow g_n = sum_{i = n}^{infty} (-1)^{i}inom{i}{n}f_i
]
不说了,因为还有形式四。
形式四
[f_n = sum _{i = n}^{infty}inom{i}{n}g_i Leftrightarrow g_n = sum_{i = n}^{infty} (-1)^{i-n}inom{i}{n}f_i
]
这个绝对是最常用的了,恰好和至少,经典套路啊。
莫比乌斯反演
与上面的两个没有什么关系,主要就两个柿子。
形式一
[f_n = sum_{d|n}g_d Leftrightarrow g_n = sum_{d|n}mu_{frac{n}{d}}f_d
]
这个是约数形式的反演。
形式二
[f_n = sum_{n|d}g_d Leftrightarrow g_n = sum_{n|d}mu_{frac{d}{n}}f_d
]
这个倍数形式的,一般来看这个更常用。
Min-Max 反演(容斥)
一般都用到概率和期望上,因为期望也是满足的。
形式一
[max(S) = sum_{T in S} (-1)^{|T|+1}min(T)
]
形式二
[min(S) = sum_{T in S} (-1)^{|T|+1}max(T)
]
斯特林反演
这个需要先会斯特林数。
其实总的来看就一种形式,不过还是分成四种吧。
形式一
[f_n = sum_{i=0}^{n}egin{Bmatrix}
n\
i
end{Bmatrix}g_i
Leftrightarrow
g_n = sum_{i=0}^{n}egin{bmatrix}
n\
i
end{bmatrix}
(-1)^{n-i}f_i]
形式二
[f_n = sum_{i=0}^{n}egin{Bmatrix}
n\
i
end{Bmatrix}(-1)^{n-i}g_i
Leftrightarrow
g_n = sum_{i=0}^{n}egin{bmatrix}
n\
i
end{bmatrix}
f_i]
好像没啥变化啊。
形式三
[f_n = sum_{i=n}^{infty}egin{Bmatrix}
i\
n
end{Bmatrix}(-1)^{i-n}g_i
Leftrightarrow
g_n = sum_{i=n}^{infty}egin{bmatrix}
i\
n
end{bmatrix}
f_i]
形式四
[f_n = sum_{i=n}^{infty}egin{Bmatrix}
i\
n
end{Bmatrix}g_i
Leftrightarrow
g_n = sum_{i=n}^{infty}egin{bmatrix}
i\
n
end{bmatrix}
(-1)^{i-n}f_i]
确实基本差不多,大佬勿喷。
单位根反演
我也是昨天才看到,没有做过题。
一个等式
[[n|a] = frac{1}{n}sum_{i=0}^{n-1}omega _n^{a imes i}
]
反演形式
[[aequiv b mod n] = [a-b equiv 0mod n] = frac{1}{n}sum_{i=0}^{n-1}omega _n^{(a-b)i} = frac{1}{n}sum_{i=0}^{n-1}omega _n^{ai}omega_n^{-bi}
]
应该没有写错吧,似乎一般用在和 mod 有关的一些东西上。
后记
我知道的也就这么多了,好像这么多也就差不多够用了吧。