n^2+(n+1)^2为平方数
请求出10^100内所有满足n^2+(n+1)^2=c^2的n. 是毕达哥拉斯三角形的三个边的解$n, n + 1, c$
设$X = n, Y = n + 1, Z = c$
则有$X = M^2 - N^2, Y = 2MN, Z = M^2 + N^2$
同样有$Y = M^2 - N^2, X = 2MN, Z = M^2 + N^2$
即$M^2 - N^2 - 2MN = +- 1$
变换得到$(M - N)^2 -2N^2 = +- 1$
是佩尔方程
有通解
设$M - N = x, N = y$
则有
$x = [(1 + sqrt(2))^r + (1-sqrt(2))^r] / 2$
$y = [(1 + sqrt(2))^r - (1-sqrt(2))^r] / {2sqrt(2)}$
设
$a_0 = 1, b_0 = 1, a_n = a_{n-1} + 2 b_{n-1}, b_n = a_{n-1} + b_{n-1}$
则有
$x = a_r, y = b_r$
$M = x + y, N = y$
已经得到结果
以下省略
呵呵 X_{0}=1,Y_{0}=0
X_{k+1 }= 3*X_{k} + 4*Y_{k} + 2
Y_{k+1} = 2* X_{k} + 3*Y_{k} + 1
那么,Y_{k}(k>=1)就是所求的n的所有解. 那就
takeWhile (\(x, y) -> y <= 10^100)\$ iterate (\(x, y) -> (3*x + 4*y + 2, 2*x + 3*y + 1))(5, 3)
得到你的答案 楼上的数学公式是不是没写好? 随便写的
哪里错了?
请指正 :L
没显示出来呀!
颜色不是蓝的啊
你没看出来么 估计不是数学公式,而是某个外星人用的程序代码。 呵呵
是计算这个问题的程序代码啊
和数学公式差不多吧
页:
[1]
2