无心人
发表于 2008-10-30 21:59:27
呵呵
记住了
有时间要买本
http://www.china-pub.com/302107
不贵,内容好不好?
medie2005
发表于 2008-10-30 22:01:56
呵呵,对于平方数组合,
当第二段平方数c^2比较小时,实质是求解丢番图方程:
x^{2}*10^{k}-y^{2}+c^{2}=0 ,10^{k-1}<=c^2<10^{k}
当第一段平方数v^2比较小时,实质是求解丢番图方程:
x^{2}-y^{2}+v^{2}*10^{k}=0,10^{k-1}<=x^2<10^{k}
http://www.alpertron.com.ar/QUAD.HTM提供了解决a x^{2} + b xy + c y^{2} + dx + ey + f = 0的方法.
medie2005
发表于 2008-10-30 22:19:25
对第二段平方数较小的情形,只要选定c,我们就可以得到一系列解.
比如,c=1,那么,
X_{n+1} = 19* X_{n} + 6* Y_{n}
Y_{n+1} = 60* X_{n} + 19*Y_{n}
X_{0]=0
Y_{0}=1
比如,
x=6,y=19 对应于 361
x=228, y=721 对应于 519841
x=8658,y=27379 对应于 749609641
......
无心人
发表于 2008-10-31 07:54:18
:)
不是所有解都有效么?
gxqcn
发表于 2008-10-31 07:59:02
原帖由 无心人 于 2008-10-30 21:59 发表 http://bbs.emath.ac.cn/images/common/back.gif
呵呵
记住了
有时间要买本
http://www.china-pub.com/302107
不贵,内容好不好?
还可以吧。:)
里面搜罗了一些趣味数学的东西,可以看作是科普性的,有广度但无深度。
我买它只是为了增加一些素材,并开拓一下视野,
以后为培养儿子的数学兴趣作准备。:lol
无心人
发表于 2008-10-31 08:01:56
有广度就可以了
有深度的东西是
mathe喜欢的东西
medie2005
发表于 2008-10-31 10:36:47
x^{2}*10^{k}-y^{2}+c^{2}=0 (1)
选定c,则k确定。
1、k为偶数。
将(1)式两边同乘以10^{k},得到:
(10^{k}*x)^{2}-y^{2}*10^{k}+(c*10^{k})^{2}=0
即:
y^{2}*10^{k}-(10^{k}*x)^{2}=(c*10^{k})^{2}
由于k为偶数,因此y^{2}*10^{k}和(10^{k}*x)^{2}都是平方数。于是,我们只要将(c*10^{k})^{2}分解就可以得到x,y的值,于是,我们只需要分解c就可以了。
2、k为奇数。
1):对c^{4}<10^{k}的情形,直接求(1)的解。会得到一个含根式的解。将这个解用连分数展开,就可以得到(1)的解。
2):对c^{4}>=10^{k}的情形。
由于c相对来说比较大,因此,我们必须对(1)进行变换,将常数项缩小。
令y = s*x - c^{2}*z。 (2)
代入(1)式,整理,得到:
((10^{k}-s^{2})/c^{2})*x^{2}+2s*xz-c^{2}*z^{2}=-1 (3)
因此,10^{k}-s^{2}=0 mod c^{2}
即:
s^{2}=10^{k} mod c^{2}
求解上式,得到s的值。
回代s到(3),然后用韦达定理解(3),得到一个含根式的解。再将解用连分数展开,就求得了x,z。代入(2),就得到了y.
mathe
发表于 2008-10-31 11:20:16
1.部分直接用式子(1):$c^2=(y^2-10^k*x^2)$,右边是平方差,对$c^2$进行因子分解就可以了.要求分解成两个同奇偶的因子,而且其中一个因子不小于$2*10^{k/2}*x$.
2.中1)不需要考虑,因为$c^2>=10^{k-1}$.
此外可以写个程序看看,比如枚举所有c<65536的情况?:lol ,或者比如产生$10^32$以内所有这种数字?
medie2005
发表于 2008-10-31 11:28:34
c=1,k=1的情况要考虑。当然,这种特殊情况可以用13#的方法来解决。
呵呵,写程序就没兴趣了。哪位有空写写吧。
对c很大的情况,不知mathe有什么好方法没?
mathe
发表于 2008-10-31 11:53:56
我们有
$(y-c)(y+c)=10^k*x^2$
由于$(y-c,y+c)|2c$
所以我们知道y-c和y+c中,所以不是10c因子的素因子的次数都是偶数.
我想利用这个条件应该可以过滤很多数据.
不过k是偶数的情况还是上面提到的方法更好.但是t是奇数的时候,上面的方法好像用处不大.