学习笔记——数论——约数

Miki ·
更新时间:2024-11-13
· 506 次阅读

1.d/n 等价于n%d==0.

2.一个整数N的约数个数的上界为2 * \sqrt{n}.

3.1-N 每个数的约数个数综合大约为N * log N 个。

4.1-1e9中的数,约数个数最多的数仅有1536个约数

倍数法求1-N中所有数的约数集合:NlogN

void gao() { vectorfactor[M]; for(int i=1;i<=n;i++)for(int j=i;j<=n;j+=i)v[j].push_back(i); }

数论分块:

k/i    (1<=i<=n)  

L,R每块的范围,x每块k/i的取值

for(int L=1,R;L<=n;L=R+1) { R=min(n,k/L?k/(k/L):n); ll x=k/L; }

最大公约数:

1.gcd(a,b)*lcm(a,b)=a*b;

2. lcm(a*d,b*d)=lcm(a,b)*d;

3.gcd(a,b)=gcd(b,a-b)=gcd(a,a-b);更相减损术

4.gcd(2*a,2*b)=2*gcd(a,b);

5.gcd(a,b)=gcd(b,a%b);欧几里得算法


作者:夕林山寸



学习笔记 数论 学习

需要 登录 后方可回复, 如果你还没有账号请 注册新账号