数学知识:和式的处理及二项式系数的运用
〇
这段时间看了一部分《具体数学》上的内容,正如第一章中所说,这本书的主要目的是:
说明不具备超人洞察力的人如何求解问题
也就是说,这本书主要讲述的是“那些本应该被讲授的硬数学技巧”。或者说是一种数学领域的通用技术,这也是“具体数学”名称的来源。
一、 和式
记号
与平时所用的 ∑nk=1 记号不同,这本书建议使用更加方便的形如 ∑1≤k≤n 的记号,这可以使你在变量替换时不容易出错。
一个特殊的地方是逻辑判断深入和式:用方括号包含的逻辑命题,如果为真则为1,如果为假则为0。这对于(cpp)程序编写是非常友好的。
运算律
和式满足下面三种基本运算律:
- 分配律(提公因式):
∑k∈Kcak=c∑k∈Kak - 结合律(和式的合并):
∑k∈K(ak+bk)=∑k∈Kak+∑k∈Kbk 交换律(变量替换):
∑k∈Kak=∑p(k)∈Kap(k)p(k) 为一个置换
多重和式具有一些特殊的性质,例如:
- 合并和分离:
∑1≤i≤n∑i≤j≤nai,j=∑1≤i≤j≤nai,j - 交换求和顺序:
∑1≤i≤n∑i≤j≤nai,j=∑1≤j≤n∑1≤i≤jai,j - 一般分配律:
∑j∈J,k∈Kajbk=⎛⎝∑j∈Jaj⎞⎠(∑k∈Kbk)
这些性质虽然是显然的,但将在处理时带来巨大的方便。第二条有助于化简和式,第三条则可以在一些“求乘积的和”的计算时减小计算量。
一般技术
1. 猜测+归纳法
虽然名字不是很好听,但这在OI中是一种实用的策略。因为计算机暴力处理的速度是很快的,如果规律明显,往往可以一眼看出。而归纳证明就非常简单了。
2. 扰动法
扰动法的动机是在和式中加入一项,并用一个新和式表达之,从而解方程得出通解。用两个例子来解释这种方法:
(一): 几何级数
的封闭形式。
用扰动法加入一项:
解方程可以得出 Sn=an+1−1a−1 。对这个公式两边微分可以得到一个有用的公式:
当 |a|<1 时可以收敛成:
(二): 平方和公式
考虑求
的封闭形式。
如果仍然用刚才的思路,我们会发现 Sn 在两边抵消了。但如果我们用三次方和 Vn 进行扰动:
两边的 Vn 可以抵消,我们解出了 Sn 。即:
3. 待定系数法
如果已知解的形式,我们可以用待定系数法得到原和式的封闭形式。例如:
先验知识告诉我们答案是一个 4 次多项式。我们只要代入
4. 有限微积分
下一部分详细介绍。
有限微积分
基本定义
有限微积分是离散数学对于微积分的回应,这种技术给出了求解和式的“不需要思考”的系统方法。考虑熟悉的微分算子的定义:
而离散中的“极限”就是1,自然地定义差分算子:
“算子(operator)”这个新概念是作用在函数上的运算,他给出了一个新函数。
简单的公式
微积分之所以方便是因为它有形如:
这样的优美公式,同样,有限微积分也有对应的优美的公式:
其中: xm−−=x(x−1)(x−2)…(x−m+1) (m个),被称为下降阶乘幂。由于可以证明任何的 xk 都在 O(k2) 内可以写成阶乘幂的和(具体方法为从高到低贪心的取),因此他的能力十分强大。
求和——离散的“积分”
微积分中可以用微分算子定义不定积分,也就是: