|
本帖最后由 天山草 于 2021-7-20 22:11 编辑
当 q=1 时 1/x + 1/y = q/p = 1/p = 1/n 的解的组数如前面陆教授的公式,写成 mathematica 程序是
共有 (Length[Divisors[n^2]]+1)/2 组解。
按这个公式写个小程序:
- Do[k = (Length[Divisors[n^2]] + 1)/2;
- If[k > 1000, Print["n= ", n, " , k= ", k]; Break[]];
- n++;
- , {n, 1, 99999999999999}]
复制代码
运行结果可答复主帖提出的问题:
n=180180 时解的个数为 k=1013,大于 1000。
n= 268107840 时解的个数为 k=11057,大于 10000。
对于大于 10000 这个解不要直接运行上面的程序,否则时间太长,因为 n = 2^2×3^2×7×11×13×17×19×23 时 k=9113,
n = 2^3×3^2×7×11×13×17×19×23 时 k=12758,因此 n 的筛选区间就缩小了范围,运行时间缩短。 |
|