如何近似从1到n的除数之和?
How to approximate the sum of number of divisors from 1 to n?
问题
我想解决这个问题:
设除数的个数=d(n)(比如d(6)=4,因为数字6有4个除数,{1,2,3,6}),我想计算d(1 )+d(2)+d(3)+...+d(n).
但是我无法计算像 10^20 或 10^30 这样的大 n(我认为如果 n 大到 10^30 则在几秒钟内计算的算法不存在),所以我决定找到这样的算法计算大约。
我目前的解决方案
我发现答案就在n log n附近(log的底数是e=2.71828...)
但在 n = 10^17 的情况下,误差约为 0.4%。
有点准,不过我觉得还有更准确的算法。
有没有更准确的算法?
Encyclopedia of Mathematics 贷记估计
n log n + (2γ - 1)n + O(√n)
狄利克雷 (1849)。 γ 是 Euler–Mascheroni constant。您可以只删除 O(√n) 误差项。
这是一个Divisor summatory function. Also, https://oeis.org/A006218。
问题
我想解决这个问题:
设除数的个数=d(n)(比如d(6)=4,因为数字6有4个除数,{1,2,3,6}),我想计算d(1 )+d(2)+d(3)+...+d(n).
但是我无法计算像 10^20 或 10^30 这样的大 n(我认为如果 n 大到 10^30 则在几秒钟内计算的算法不存在),所以我决定找到这样的算法计算大约。
我目前的解决方案
我发现答案就在n log n附近(log的底数是e=2.71828...)
但在 n = 10^17 的情况下,误差约为 0.4%。
有点准,不过我觉得还有更准确的算法。
有没有更准确的算法?
Encyclopedia of Mathematics 贷记估计
n log n + (2γ - 1)n + O(√n)
狄利克雷 (1849)。 γ 是 Euler–Mascheroni constant。您可以只删除 O(√n) 误差项。
这是一个Divisor summatory function. Also, https://oeis.org/A006218。