タグ

rubyとlistに関するyouzのブックマーク (1)

  • Re: 無限オブ無限 - まめめも

    順番はどう変えてもいいから、とにかく『どの要素もいつかは出てくる(有限ステップ以内には出てくる)』ように列挙したリストを返す関数を作ってみてください。 無限オブ無限 何か設問に裏の意図がありそうな気配を感じますが、あっさり釣られます。無限リストの無限リスト限定ならわりとシンプル。 def iflatten(g) a = [] loop { a << g.next; a.each {|a| yield a.next } } end でもこれは有限リストが混ざるとうまく動きません。有限リスト対応版はなんだか複雑。 def iflatten(g) a = [] begin a << g.next rescue g = nil a = a.select {|a| yield a.next rescue next; true } end until !g && a.empty? end 手抜きしてる

    Re: 無限オブ無限 - まめめも
  • 1