神盐皇

Posted znsbc-13

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了神盐皇相关的知识,希望对你有一定的参考价值。

终于会了

先放一个极好的博客

求满足$a+b|a*b,&a<=n,b<=n$数对数量,$n<=10^{15}$

设$d=gcd(a,b)$

那么$a_1=frac{a}{d},,b_1=frac{b}{d}$

原要求变为$(a_1+b_1)*d|a_1*b_1*d*d$即$(a_1+b_1)|a_1*b_1*d$

考虑辗转相减法转化$gcd(a_1,b_1)==1$->$gcd(a_1+b_1,b_1)==1$->$gcd(a_1+b_1,a_1)==1$

$a_1+b_1$与$b_1$无公因数,与$a_1$无公因数$gcd(a_1+b_1,a_1*b_1)==1$

原式变为求$(a_1+b_1)|d$个数

$i=a_1+b_1$设$d=k*i$

$d*i<=n$故$k$共$large lfloor frac {n}{i*i} floor$个

考虑$i$的取值情况,

现在要求$gcd(x-i,i)==1$数个数

仍然考虑辗转相减$gcd(x,i)==1$个数,确定,$x<=i$,那么就是$varphi(i)$

$sumlimits_{i=1}^{sqrt n}varphi(i)lfloorfrac{n}{i^2} floor$

然后关于$varphi(i)$求法

我又忘了$varphi(i)$线筛怎么求了,重新理解了一遍

首先计算式$varphi(N)=Nprod_{i}^{i|N且i为质数}(1-frac{1}{i})$

$varphi$是积性函数

互质的$a,b$满足$varphi(a*b)=varphi(a)*varphi(b)$

首先$p$为质数若$p|N$且$p^2 mid N$ 那么说明互质$varphi(N)=varphi(frac{N}{p})varphi(p)$

$varphi(p)=p-1$

那么$varphi(N)=varphi(frac{N}{p})*(p-1)$($p$为质数若$p|N$且$p^2 mid N$)

那么若$p|N$且$p^2|N$ 那么说明有相同质因子不互质

说明$N$与$frac{N}{p}$拥有的质因子完全相同,根据计算式$varphi(N)=Nprod_{i}^{i|N且i为质数}(1-frac{1}{i})$后面部分完全一样差的只是前面的$N$

于是$varphi(N)=varphi(frac{N}{p})*p$($p|N$且$p^2|N$)

总结

打表不会出奇迹

关于gcd相关应用

以上是关于神盐皇的主要内容,如果未能解决你的问题,请参考以下文章