Ruby
オンライン整数列大辞典の
A034444(http://oeis.org/A034444/list)と比較し、答え合わせしてみる。
def A034444(n)
# 2以上のとき、1と自分自身
a = Array.new(n + 1, 2)
a[0], a[1] = 1, 1
i = 2
while i * i < n
(i + 1..n / i).each{|j| a[i * j] += 2 if i.gcd(j) == 1}
i += 1
end
a[1..-1]
end
ary = A034444(105)
# OEIS A034444のデータ
ary0 =
[1,2,2,2,2,4,2,2,2,4,2,4,2,4,4,2,2,4,2,4,4,4,2,4,
2,4,2,4,2,8,2,2,4,4,4,4,2,4,4,4,2,8,2,4,4,4,2,4,2,
4,4,4,2,4,4,4,4,4,2,8,2,4,4,2,4,8,2,4,4,8,2,4,2,4,
4,4,4,8,2,4,2,4,2,8,4,4,4,4,2,8,4,4,4,4,4,4,2,4,4,
4,2,8,2,4,8]
# 一致の確認
p ary == ary0
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。