各种证明(备忘)

不定期更新(×)

定期不更新(√)

n div i有2√n个取值

https://blog.csdn.net/gmh77/article/details/88142031
显然n div i最多只有2√n个取值,则s和g最多只有2√n个取值
对于≤√n的数可以直接存,处理也很方便,对于>√n的可以用n div x来存

n div a div b=n div (a*b)

来自https://blog.csdn.net/semiwaker/article/details/73822107

在这里插入图片描述

n div (n div x)=x (x≤√n)

n=ax+b0b<x
nnx=x
ax+bax+bx=x
ax+ba=x
x+ba=x
如果ba<1那么结论就可以成立
a>b
因为n=ax+b
所以a=nxb=nmodx
因为xsqrt(n),所以nxsqrt(n),即asqrt(n)
因为b=nmodx,所以b<x,即b<sqrt(n)
所以asqrt(n)>b,即当xsqrt(n)时原式成立
(用于min25筛)

平方求和公式

不是求平方和
i=1ni2
根据高斯求和公式,i=1ni2=i=1n12(i+n)(ni+1)(i2=i*i,i出现了i次)
=12i=1nn2i2+i+n
=12(n2(n+1)+12(1+n)ni=1ni2)
=12(n(n+1)(n+12)i=1ni2)
联立求解
i=1ni2=12(n(n+1)(n+12)i=1ni2)
2i=1ni2=n(n+1)(n+12)i=1ni2
3i=1ni2=n(n+1)(n+12)
i=1ni2=n(n+1)(n+12)3
i=1ni2=n(n+1)(2n+1)6

调和级数公式

https://blog.csdn.net/gmh77/article/details/98226712
i=1n1i=ln(n)+γ+Xn(γ为欧拉常数,当n趋近与无穷大时Xn约等于0)

i=1n1i=1n+11xdx
=1n+11xdx+1n+1(1x1x)dx
=ln(n+1)+1n+1(1x1x)dx
=ln(n)+γ+Xn(n+1≈∞)
ln(n)+γ(n+1≈∞)

欧拉常数计算

#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cmath>
#define fo(a,b,c) for (a=b; a<=c; a++)
#define fd(a,b,c) for (a=b; a>=c; a--)
#define E 0.0001
using namespace std;

long double euler,i;

int main()
{
	i=1;
	
	while (i<=10000)
	{
		euler+=(1.0/floor(i)-1.0/i);
		i+=E;
	}
	
	printf("%0.10Lf\n",euler*E);
}

算得γ=0.5771351607

斐波那契数列性质

https://blog.csdn.net/gmh77/article/details/98583079
gcd(F(n1),F(n))=1
F(n)=F(m+1)F(nm)+F(m)F(nm1)
gcd(F(n),F(m))=F(gcd(n,m)
证明:

反证,若gcd(F(n1),F(n))=a(a>1),那么a|F(n-1)、a|F(n)
因为F(n)=F(n-1)+F(n-2),则a|F(n-2)
如此类推,发现a|F(1)
因为a>1且F(1)=1,所以不成立

归纳:已证得F(n)=F(m)F(nm+1)+F(m1)F(nm),边界为F(n)=F(2)F(n1)+F(1)F(n2)(m=1)
F(n)=F(m)F(nm+1)+F(m1)F(nm)
F(n)=F(m)F(nm)+F(m)F(nm1)+F(m1)F(nm)
F(n)=(F(m)+F(m1))F(nm)+F(m)F(nm1)
F(n)=F(m+1)F(nm)+F(m)F(nm1)

gcd(F(n),F(m))=gcd(F(m+1)F(nm)+F(m)F(nm1),F(m))
gcd(F(n),F(m))=gcd((F(m+1)F(nm)+F(m)F(nm1))modF(m),F(m))
因为gcd(ab,c)=gcd(b,c)(ac互质)且gcd(F(m),F(m+1))=1
gcd(F(n),F(m))=gcd(F(nm),F(m))
可以发现上面的式子类似求gcd
因为gcd(a,b)=gcd(gcd(a,b),0)
类比可得gcd(F(n),F(m))=gcd(F(gcd(n,m)),F(0))=F(gcd(n,m))(F(0)=0)
(这个式子对多个数也是成立的)
参考&其它性质:https://www.cnblogs.com/Milkor/p/4734763.html

欧拉函数性质

https://blog.csdn.net/gmh77/article/details/99066792
n=d|nφ(d)
F(n)=d|nφ(d),则
F(n)F(m)=i|nφ(i)j|mφ(j)(nm互质)
=i|nj|mφ(ij)
=F(nm)
所以证得F(n)是积性函数
F(pk)(p为质数)
F(pk)=i=0kφ(pi)
=(i=1kpi(11p))+1
=(i=1kpi1(p1))+1
=(i=1kpipi1)+1
=pkp0+1
=pk
由于F(n)是积性函数,且F(pk)=pk,所以可以推得F(n)=n(对于任意n)
所以
F(n)=d|nφ(d)
n=d|nφ(d)
参考&其它性质:https://blog.csdn.net/liuzibujian/article/details/81086324

i=0p1(xi)=xpx(modp)pprime

时隔六个月我又更了

大概是因为点值相同所以等价

具体证明:https://www.cnblogs.com/Dup4/p/10750749.html

1x2=π26

有这条式子但是不会证

gcd(i,n)=1i=12φ(n)n

当n>2时若gcd(n,i)=1,则gcd(n,n-i)=1

那么gcd=1的会成对存在,有phi(n)/2对,每对相加为n

n=2时刚好满足(巧合),n=1要特判

i=1ki(ki)=2k1k

i(ki)=ik!i!(ki)!=k(k1)!(i1)!(ki)!=(k1i1)

σ0(nm)=i|nj|m[(i,j)=1]

σ0是约数个数

每个因子p(n中a1,m中a2)是独立的,因此等价于算了(a1+1)+(a2+1)-1=a1+a2+1次,刚好是σ0的计算方法

斐波那契通项公式

https://www.cnblogs.com/gmh77/p/13387949.html

φ(ab)=φ(a)φ(b)(a,b)φ((a,b))

这是当ab不互质的情况,考虑直接相乘时对于ab的共同质因子会多乘上一个(p-1)/p,所以要将其消掉

而后面的(a,b)φ((a,b))就是把共同(p-1)/p除掉

posted @   gmh77  阅读(476)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示