51nod1189 阶乘分数

1/N! = 1/X + 1/Y(0<x<=y),给出N,求满足条件的整数解的数量。例如:N = 2,1/2 = 1/3 + 1/6,1/2 = 1/4 + 1/4。由于数量可能很大,输出Mod 10^9 + 7。
Input
输入一个数N(1 <= N <= 1000000)。
Output
输出解的数量Mod $10^9 + 7$。
Input示例
2
Output示例
2

这道题花了我一小时的时间。

主要原因是。。。我和题解推出来式子不太一样,然后我为了证明这两个式子是相等的,用了很长时间。

我比较瓜,先放我贼不优秀的式子:

$$frac{1}{N!} = frac{1}{x} + frac{1}{y}$$

$$N! = frac{x imes y}{x+y}$$

$$y = frac{N! imes x}{x - N!}$$

令$t = N! , x = frac{b}{a} imes N!    (gcd(a,b)==1)$

$$y = frac{frac{b}{a} imes t^2}{frac{b-a}{a} imes t}$$

$$y = frac{b imes t}{b-a}$$

因为x、y都是整数,a、b互质,所以$(c=b-a) | t$、$a | t$

那么$ans imes 2 - 1=sumlimits_{a|t} sumlimits_{c|t} [gcd(a,c)==1]$

然后发现网上题解都是这样子做的,比我的优秀多了:

$$x imes y = N! imes (x+y)$$

$$x imes y - N! imes (x+y) + (N!)^2= (N!)^2$$

$$(x-N!) imes (y-N!) = (N!)^2$$

那么$ans imes 2 - 1 = sumlimits_{a|t^2} 1$

于是我很想证明的就是

$$sumlimits_{x|t^2} 1= sumlimits_{a|t}sum limits_{c|t} [gcd(a,c)=1]$$

我瞪着这个式子看了半天,然后去问llj dalao。他告诉我去打个表。

我打表发现式子是成立的。

然后怎么证明这个式子是成立的呢?

我们设$t = p_1^{a_1} imes p_2^{a_2} imes p_3^{a_3} imes ........$

对于第i个质数$p_i$

对于$a|t$ && $c|t $&&$ [gcd(a,c)==1]$的$a$、$c$含有质因子$p_i$的个数的方案数有$2 imes a_i +1$种。

对于$x|t^2$的$x$含有$p_i$的个数的方案数也有$2 imes a_i +1$种。

所以说可以一一对应啦。

原文地址:https://www.cnblogs.com/Serene-shixinyi/p/8099278.html