差分
我們知道,有無限微積分,就是對於一個多項式,有:
\[\Delta y=f(x+\Delta x)-f(x)
\]
其中 \(\Delta x\) 趨近於無窮小。
那麼,我們類似的,定義多項式的差分:
\[\Delta f(x)=(x+1)-f(x)
\]
意思是,\(\Delta f(x)\) 是一個新的函式,它描述了 \(f(x)\) 的差。
這個函式的性質很有意思。比如,\(\displaystyle \sum_a^b \Delta f(x)=f(b)-f(a)\)
翻譯成 OI 的語言就是:差分陣列的字首和就是原陣列。
那麼,差分的性質還有哪些?
-
加法律:\(\Delta (u+v)=\Delta u+\Delta v\)。
-
減法律:\(\Delta (u-v)=\Delta u-\Delta v\)
-
數乘律:\(C\Delta u=\Delta (Cu)\)
-
乘法率:\(\Delta (uv)=u\Delta v+Ev \Delta u\)
定和式
為了解決數列求和問題,我們定義定和式:
\[\begin{aligned}
{\sum}_a^b f(x)\delta x=\sum_{k=a}^{b-1}f(k)=f(a)+f(a+1)+f(a+2)+...+f(b-1)
\end{aligned}
\]
它是差分的逆運算,根據上面所述,我們有:
\[\begin{aligned}
{\sum}_a^b\Delta f(x)\delta x&=\Delta f(a)+\Delta f(a+1)+...+\Delta f(b-1) \\
&=f(a+1)-f(a)+f(a+2)-f(a+1)+...+f(b)-f(b-1) \\
&=f(b)-f(a)
\end{aligned}
\]
使用上面的定義,我們可以得出定和式的以下性質:
-
\({\sum}_a^b f(x)\delta x+\sum_b^c f(x)\delta x=\sum_a^c f(x)\delta x\)
-
\(\sum_a^b f(x)\delta x\pm \sum_a^b g(x)\delta x=\sum_a^b (f(x)+g(x))\delta x\)
-
\(\sum_a^b Cf(x)\delta x=C\sum_a^b f(x)\delta x\)
那麼,我們可以利用這個工具,實現數列的 \(O(n)\) 求和向 \(O(1)\) 求和的進步。
例如:求等比數列的和 \(\displaystyle\sum_{k=0}^{n-1}a^k(a\neq 1)\)
首先考慮指數函式的差分:
\[\begin{aligned}
\Delta(a^x)=a^{x+1}-a^x&=(a-1)a^x \\
\frac{a^{x+1}-a^x}{a-1}&=a^x \\
a^x&=\Delta(\frac{a^x}{a-1})
\end{aligned}
\]
因此
\[\sum_{k=0}^{n-1}a^k={\sum}_0^n a^x\delta x=\sum_0^n \Delta(\frac{a^x}{a-1})\delta x=\frac{a^n}{a-1}-\frac{a^0}{a-1}=\frac{a^n-1}{a-1}
\]
下降冪
引出下降冪的概念,也是為了對應在無限微積分中普通冪的性質。
我們根據差分定義有:
\[\Delta (x^n)=(x+1)^n-x^n=\sum_{k=0}^{n-1}\binom{n}{k}x^k
\]
但是在無限微積分中,我們熟知:\((x^n)'=nx^{n-1}\)
我們這裡給出下降冪的定義:
\[x^{\underline{n}}=\frac{1}{n!}\binom{x}{n}=\frac{x!}{(x-n)!}=\prod_{k=0}^{n-1}(x-k)
\]
那麼在有限微積分中,有類似優雅的結論:
\[\begin{aligned}
\Delta (x^{\underline{n}})&=(x+1)^{\underline{n}}-x^{\underline{n}} \\
&=\prod_{k=0}^{n-1} (x-k+1)-
\prod_{k=0}^{n-1}(x-k) \\
&=\prod_{k=-1}^{n-2}(x-k)-\prod_{k=0}^{n-1}(x-k) \\
&=(x+1-x+n-1)\prod_{k=0}^{n-2}(x-k) \\
&=nx^{\underline{n-1}}
\end{aligned}
\]
太完美了!
那麼,進一步地
\[\begin{aligned}
\Delta(x^{\underline{n}})&=nx^{\underline{n-1}} \\
\Delta(x^{\underline{n+1}})&=(n+1)x^{\underline{n}} \\
(x+1)^{\underline{n+1}}-x^{\underline{n+1}}&=(n+1)x^{\underline{n}} \\
\frac{(x+1)^{\underline{n+1}}-x^{\underline{n+1}}}{n+1}&=x^{\underline{n}} \\
\Delta(\frac{x^{\underline{n+1}}}{n+1})&=x^{\underline{n}}
\end{aligned}
\]
那麼仿照等比數列的式子,我們再來幾個例子:
- 求解等差數列 \(\displaystyle\sum_{k=1}^nk\)
\[\sum_{k=1}^{n}k={\sum}_1^{n+1}x^{\underline{1}}\delta x=\frac 1 2(n+1)^{\underline{2}}-\frac 1 2 1^{\underline{2}}=\frac{n(n+1)}{2}
\]
- 求解 \(\displaystyle\sum_{k=1}^n \frac{1}{k(k+1)}\)
\[\sum_{k=1}^n\frac{1}{k(k+1)}=\sum_{k=0}^{n-1}k^{\underline{2}}={\sum}_{0}^{n}x^{\underline{-2}}\delta x=\dfrac{n^{\underline{-1}}-0^{\underline{-1}}}{-1}=1-\dfrac{1}{n+1}
\]
- 求證上指標求和公式 \(\sum_{k=0}^n \binom{k}{m}=\binom{n+1}{m+1}\)
\[\begin{aligned}
\sum_{k=0}^n\dbinom{k}{m}&=\sum_{k=0}^n\frac{k^{\underline{m}}}{m!}=\frac{1}{m!}={\sum}_0^{n+1}x^{\underline{m}}\delta x \\
&=\frac{(n+1)^{\underline{m+1}}-0^{\underline{m+1}}}{m!(m+1)}=\frac{(n+1)^{\underline{m+1}}}{(m+1)!}=\binom{n+1}{m+1}
\end{aligned}
\]
- 求解 \(\displaystyle\sum_{k=1}^n k^2\)
\[\sum_{k=1}^n k^2=\sum_{k=0}^n k^2={\sum}_{0}^{n+1}(x^{\underline{2}}+x)\delta x=\frac 1 3(n+1)^{\underline{3}}+\frac 1 2 (n+1)^{\underline(2)}=(n+1)n(\frac 1 3(n-1)+\frac 1 2)=\frac{(n+1)n(2n+1)}{6}
\]