northwolves 发表于 2014-11-20 20:10:00

平方和

对于数字N,如何快速把它分解为6个非0数字的平方和,并且每个数字的位数都不相同,如:

\(15395320991 =1^2+12^2+123^2+1234^2+12345^2+123456^2\)

1. 快速求一个解?
2. 列出全部解?

wayne 发表于 2014-11-21 12:50:57

为啥选 15395320991这种没有特点的数字,该不会是 造出来的吧~

===
用Mathematica 的 SquaresR 计算 有 4 740 239 838 220 125 657 600 组解

northwolves 发表于 2014-11-21 16:30:25

为了更好理解,我们这里就假设N的范围为10101010101 (=SUMPRODUCT((10^(ROW(1:6)-1))^2)) 到 1010098787886 (=SUMPRODUCT((10^ROW(1:6)-1)^2))
显然10101010102,10101010103,10101010201,10101010301是无解的。

northwolves 发表于 2014-11-21 16:49:03

这个有什么优化的算法?
似乎只有6位数中的前两位可直接确定。

northwolves 发表于 2014-12-4 22:17:17

查了大量文献,还是没有找到比较高效的算法。比如,和值等于662894,平方和等于341794939132的这样的6个数(6个数分别为1-6位)共有多少组?
页: [1]
查看完整版本: 平方和