原始ピタゴラス数の和(2)
1≦x<y<z≦nなる原始ピタゴラス数について、
その和をf(n)とする。
1≦i≦7のとき、f(10 ** i) を求めてみた。
def f(a, b, c, n)
return 0 if c > n
s = a + b + c
s += f( a - 2 * b + 2 * c, 2 * a - b + 2 * c, 2 * a - 2 * b + 3 * c, n)
s += f( a + 2 * b + 2 * c, 2 * a + b + 2 * c, 2 * a + 2 * b + 3 * c, n)
s += f(-a + 2 * b + 2 * c, -2 * a + b + 2 * c, -2 * a + 2 * b + 3 * c, n)
return s
end
p (1..7).map{|i| f(3, 4, 5, 10 ** i)}
出力結果
[12, 1936, 179568, 18128932, 1809940702, 180861233118, 18090545150630]
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。