![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数论
数论相关
AcTarjan
冲冲冲!!!
展开
-
区域
区域(zone):包括开区域(开域)和闭区域(闭域)注:无特殊说明,区域指开区域开区域:满足下列条件的平面点集(记为D)(1)D是一个开集(2)D是连通的,即D中的任意两点都可以用一条折线连接起来,且折线上的点全部在D内闭区域:开区域及其边界点构成的平面点集有界区域:如果一个区域D可以被包含在一个以原点为中心的圆里面,那么称区域D有界,即存在正数M,使区域D内的每个点都满足...原创 2018-11-07 21:10:48 · 5831 阅读 · 0 评论 -
矩阵快速幂
原理:和普通快速幂一样,只不过将数与数相乘变成了矩阵与矩阵相乘,手动实现矩阵的乘法即可题目:1、操作数2、粉樱花之恋代码实现:#include <bits/stdc++.h>using namespace std;#define maxn 21typedef long long int ll;ll mod=1e9+7;struct mat{ i...原创 2018-09-17 22:55:35 · 184 阅读 · 0 评论 -
快速幂取余
应用:快速计算出a的n次方对mod取余对于计算a的n次方,暴力的方法时间复杂度是O(n),对于n>1e8的情况下已经不能使用了我们知道a的n次方可以写成:(其中)所以只要想办法找出b数组即可;我们考虑到一个数使用二进制表示的特点,对于一个数的二进制表示为1的位次分别是第i1、i2、i3、……ik,则n = ,所以我们只需要从低位到高位依次找到二进制位是1,每找到一个为1的位就...原创 2018-09-18 00:23:53 · 344 阅读 · 0 评论 -
最大公约数
两个数x,y的最大公约数记为gcd(x,y)两个数x,y的最小公倍数记为lcm(x,y)则有:gcd(x,y)*lcm(x,y)=x*y求解最大公约数的方法:1、辗转相减法:(又称更相减损术)当求大数的最大公约数时,以较大的数减去减小的数,接着把所得的差与较小的数比较,再以大数减小数,重复这个步骤,直到两个数相等为止,这个数就是最大公约数。公式:gcd(x,y)=gcd(x...原创 2018-09-19 15:26:14 · 295 阅读 · 0 评论 -
容斥原理
对于两个集合A、BA ∪ B=A+B - A∩B对于三个集合A、B、CA∪B∪C=A+B+C -(A∩B+A∩C+B∩C)+A∩B∩C用维恩图表示:对于四个集合A、B、C、DA∪B∪C∪D = A+B+C+D - (A∩B+B∩C+C∩D+A∩C+A∩D+B∩D)+(A∩B∩C+A∩B∩D+B∩C∩D)﹣A∩B∩C∩D猜想:对于n个集合a1、a2、a3……ana...原创 2018-09-19 15:28:39 · 751 阅读 · 0 评论 -
阶乘问题——斯特林公式
1、计算n!的位数2、估计lg(n!)的大小斯特林公式:(n越大越精确) 更加精确地: 或者: 相关题目:假的数学游戏1、计算n!的位数对于整数x,我们知道其位数为[lgx]+1所以对于n!,其位数[lg(n!)]+1根据斯特林公式:故其位数res是:代码实现:#include <bits/st...原创 2018-09-25 21:02:57 · 1096 阅读 · 0 评论 -
斜抛运动的最远射程问题
问题概述:在o点上方高度为h处以速度v抛出一物体,该物体运动一段时间后落到地面p处,问抛出方向与水平方向的夹角是多少时,op有最大值,最大值是多少?当 时:op有最大值:题目:迎风舞...原创 2018-10-05 23:48:52 · 5684 阅读 · 0 评论 -
扩展欧几里得算法
1、计算a*x+b*y=gcd(a,b)的通解返回值是gcd(a,b)函数运行后得到的x,y即是方程一组特解,记为x0、y0x = x0 +(b/gcd)*ty = y0 – (a/gcd)*tint e_gcd(int a,int b,int &x,int &y){ if(b==0) { x=1;y=0; r...原创 2018-11-28 20:44:42 · 192 阅读 · 0 评论