Zagier's problems(3)
U(n) = 0 mod (6n + 2) のとき、u_n が整数となるので、
そのようなn を求めてみた。
require 'matrix'
def power(a, n, mod)
return Matrix.I(a.row_size) if n == 0
m = power(a, n >> 1, mod)
m = (m * m).map{|i| i % mod}
return m if n & 1 == 0
(m * a).map{|i| i % mod}
end
def f(n)
ary0 = [51, 10, 2]
v = Vector.elements(ary0)
ary1 =
[[5, 2, 1],
[1, 0, 0],
[0, 1, 0]]
a = Matrix[*ary1]
mod = 6 * n + 2
(power(a, n, mod) * v)[2] % mod
end
(1..10 ** 7).each{|i|
p i if f(i) == 0
}
出力結果
2755452
4570452
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。