過去ログ

まるケン
先に挙げた整数列大辞典に、以下のような三角形な数字が書かれていました。

1
1 2
2 3 5
5 7 10 15
15 20 27 37 52

法則はよくわからなかったのですが、推測で次の行の求め方を考えました。

次の行の先頭には、前の行の末尾を持ってくる

15 20 27 37 52
52

52 の隣には、52の上の15を足した 67 を書く。

15 20 27 37 52
52 67

67の隣には、67の上の20を足して、、、
以下、上に数字がなくなるまで繰り返す。

15 20 27 37 52
52 67 87

15 20 27 37 52
52 67 87 114

15 20 27 37 52
52 67 87 114 151

15 20 27 37 52
52 67 87 114 151 203

この方式で書き直したら、ワンライナー、ちょっと短くなりました。

p Hash.new{|h,k|h[k]=k<1?[1]:h[k-1].inject(h[k-1][-1,1]){|r,i|r+[r[-1]+i]}}[N][0]
   9月12日(火) 16:40:07   MAIL:take4310@mobile.email.ne.jp   52750

過去問題一覧へ戻る