Numerator of Bernoulli(36 * 37) ł 37
Bernoulli(2 * 666) の分子は37で割り切れないが、
Bernoulli(2 * 777) の分子は37で割り切れる。
def bernoulli(n)
ary = []
a = []
(0..n).each{|i|
a << 1r / (i + 1)
i.downto(1){|j| a[j - 1] = j * (a[j - 1] - a[j])}
ary << a[0] # Bn = a[0]
}
ary
end
def A(k, n)
a = bernoulli(2 * n)
ary = []
(0..n).each{|i|
j = a[2 * i].numerator
ary << i if j % k == 0
}
ary
end
n = 777
p A(37, n)
出力結果
[16, 34, 37, 52, 70, 74, 88, 106, 111, 124, 142, 148, 160, 178, 185, 196, 214, 222, 232, 250, 259, 268, 286, 296, 304, 322, 333, 340, 358, 370, 376, 394, 407, 412, 430, 444, 448, 466, 481, 484, 502, 518, 520, 538, 555, 556, 574, 592, 610, 628, 629, 646, 664, 682, 700, 703, 718, 736, 740, 754, 772, 777]
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。