假设N = 8.有4对(1,8),(2,8),(4,8),(8,8),其LCM为8.如果N = 6.则有5对(1,6),(2,6),(2,3),(3,6),(6,6),其LCM为6.现在我想知道如何快速找到对的数量?
答案 0 :(得分:1)
math.stackexchange.com上的问题"Pairs of numbers with at given LCM"给出了公式
((2e1+1)(2e2+1)...(2ek+1)+1)/2
where e1, e2, ... is the exponents for the unique prime factors of n
这个号码。
即
8 = 2 ^ 3具有((2 * 3 + 1)+1)/ 2 = 4对这样的对,
6 = 2 ^ 1 * 3 ^ 1有((2 * 1 + 1)(2 * 1 + 1)+1)/ 2 = 5对这样的对,并且
60 = 2 ^ 2 * 3 ^ 1 * 5 ^ 1有((2 * 2 + 1)(2 * 1 + 1)(2 * 1 + 1)+1)/ 2 = 23对这样的对。
答案 1 :(得分:0)
您可以参考此处的类似问题
https://math.stackexchange.com/questions/4152/pairs-of-numbers-with-a-given-lcm
基本上如果n =(p1 ^ e1)(p2 ^ e2) ...(pk ^ ek)其中pi是1< = i< = k的素数
然后解决方案是((2e1 + 1)(2e2 + 1) ...(2ek + 1)+1)/ 2