一、高精度计算

二、数论入门

三、模运算


四、快速幂

位运算快速幂

思想

代码如下

矩阵快速幂

矩阵快速幂利用快速幂的思想,也就是二分思想把矩阵对半进行乘法;

应用

Fibonacci数列矩阵快速幂

我发现 矩阵

有以下规律

矩阵与斐波那契数列有密切关系:

矩阵Matrix 0次方为;

矩阵Matrix 一次方为;

矩阵Matrix 二次方为:

 

矩阵Matrix 三次方为:

矩阵Matrix 四次方为:

矩阵Matrix 五次方为:

矩阵Matrix 六次方为:

综上所述

矩阵Matrix n次方为: 若 n >= 2;

矩阵Matrix n次方为: 若 n >= 1, 且f(0) = 0; 则有

故代码如下:

练习 http://acm.hdu.edu.cn/showproblem.php?pid=2817 hdu 2817

http://acm.hdu.edu.cn/showproblem.php?pid=1061 hdu 1061

http://acm.hdu.edu.cn/showproblem.php?pid=5392 hdu5392 目前不会,置换群幂运算,表示不懂。


五、GCD、LCM

1、GCD

原理

代码实现如下

验证

实现了GCD, LCM不就简单了么.

原理:


六、扩展欧几里得算法与一元二次方程的整数解

 

七、同余与逆元

八、素数

1、快速线性筛

快速线性筛法没有冗余,不会重复筛除一个数,所以几乎是线性的。 虽然从代码上分析,时间复杂度并不是O(n),而是接近线性而已。

九、组合数学

十、鸽巢原理

十一、杨辉三角与二项式系数

十二、容斥原理

十三、Fibonacci数列

十四、母函数

十五、特殊计数

十六、概率与数学期望

十七、公平组合游戏

十八、巴什游戏与P-position、 N-position

十九、尼姆游戏

二十、图游戏与Sprague-Grundy

二十一、威佐夫游戏