2015年9月21日月曜日

150921

Ruby


Half-Catalan number

オンライン整数列大辞典の
A000992(http://oeis.org/A000992/list)
と比較し、答え合わせしてみる。

def A000992(n)
  ary = [0, 1]
  i = 2
  while i <= n
    s = 0
    (1..i / 2).each{|j| s += ary[j] * ary[i - j]}
    ary[i] = s
    i += 1
  end
  ary[1..-1]
end
ary = A000992(32)

# OEIS A000992のデータ
ary0 =
[1,1,1,2,3,6,11,24,47,103,214,481,1030,2337,5131,
 11813,26329,60958,137821,321690,734428,1721998,
 3966556,9352353,21683445,51296030,119663812,
 284198136,666132304,1586230523,3734594241,
 8919845275]
# 一致の確認
p ary == ary0

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。