问题是,如何解决1 / x + 1 / y = 1 / N! (N阶乘)。找到满足大的N值的x和y的值的数量。
我已经解决了相对较小的N值(任何N!都适合长)的问题。所以,我知道我通过获得(N!)^ 2的所有除数来解决问题。但是当(N!)^ 2无法适应长时间时,开始失败。我也知道我可以找到N的所有除数!通过将N中每个数字的所有素因子相加起来!我缺少的是如何使用因子中的所有数字来找到x和y值。
编辑:没有找到“答案”只是一两个提示。
答案 0 :(得分:21)
问题:找到(N!)^ 2的因子计数。
提示:
1)你真的不需要计算(N!)^ 2来找到它的素因子。 为什么? 假设您找到N的素数因子分解! as(p1 ^ k1)x(p2 ^ k2)....(pi ^ ki) 其中pj是素数而kj是指数。
现在N的因素数量!很明显 (k1 + 1)x(k2 + 1)x ... x(ki + 1)。
2)对于(N!)^ 2,上面的表达式是, (2 * k1 + 1)*(2 * k2 + 1)* .... *(2 * k1 + 1) 这基本上就是我们正在寻找的。 p>
例如,我们取N = 4,N! = 24且(N!)^ 2 = 576; 24 = 2 ^ 3 * 3 ^ 1; 因此没有因素=(3 + 1)*(1 + 1)= 8,即{1,2,3,4,6,8,12,24} 对于576 = 2 ^ 6 * 3 ^ 2,它是(2 * 3 + 1)*(2 * 1 + 1)= 21;
3)基本上你需要在这里找到每个素数的多重性< = N。
如果我在这里错了,请纠正我。
答案 1 :(得分:11)
这是你的提示。假设 m = p 1 k 1 · p 2 k 2 ·...· p < / EM> <子> Ĵ 子> ķ <子> Ĵ 子> 。 m 的每个因子都有0到 k 1 因子 p 1 ,0到 k 2 因子 p 2 ,依此类推。因此有(1 + k 1 )·(1 + k 2 )····· 1 + k j )可能的除数。
所以你需要找出 n ! 2 的主要因子分解。
注意,这将计算,例如, 1 / 6 = 1 / 8 + 1 / 24 与 1 / 6 = 1 / 24 + 1 / 8 。如果顺序无关紧要,则加1并除以2.(除以2是因为通常2个除数将导致相同的答案,加法1表示除数 n !与自己配对的一对。)
答案 2 :(得分:4)
数学比编程更重要。 你的等式意味着xy = n!(x + y)。
设c = gcd(x,y),所以x = cx',y = cy',gcd(x',y')= 1。 那么c ^ 2 x'y'= n! c(x'+ y'),所以cx'y'= n!(x'+ y')。
现在,由于x'和y'是互质的,并且不能被x'+ y'整除,c应该是。 所以c = a(x'+ y'),它给出了ax'y'= n!。
为了解决你的问题,你应该找到n!的所有两个互质除数,每一对都会得到一个解(n!(x'+ y')/ y',n!(x'+ y') )/ X')
答案 3 :(得分:2)
设F(N)为满足您要求的(x,y)组合数。
F(N + 1)= F(N)+#(x,y)满足N + 1的条件,并且它们中的至少一个(x或y)不是可分的N + 1.
这里的直觉是针对N工作的所有组合(x,y),(x *(N + 1),y *(N + 1))将对N + 1起作用。此外,如果(x,y)是N + 1的解,并且两者都可以被n + 1整除,则(x /(N + 1),y /(N + 1))是N的解。
现在,我不确定找到适用于(N + 1)的#(x,y)是多么困难,并且其中至少有一个不能被N + 1整除,但应该比解决原始问题更容易问题
答案 4 :(得分:2)
现在N中的Prime p的多重性或指数!可以通过以下公式找到: P in的指数(N!)= [N / p] + [N /(P ^ 2)] + [N /(P ^ 3)] + [N /(P ^ 4)] + ..... ..........
where [x]=Step function E.g. [1.23]=integer part(1.23)=1
E.g。 24的3指数! = [24/3] + [24/9] + [24/27] + ... = 8 +2 +0 + 0 + .. = 10 现在整个问题减少到识别N以下的素数并在N中找到它的指数