[#37041] [ANN] Exerb/Exerb-CC 2.6.0 — Yuya Kato <yuya-ml@4th.to>

未踏ユース終了まで1ヶ月を切って、焦り気味のYuyaです。

27 messages 2003/02/02
[#37202] Re: [ANN] Exerb/Exerb-CC 2.6.0 — "TOYOFUKU Chikanobu" <toyofuku@...> 2003/03/02

豊福です。

[#37206] Re: [ANN] Exerb/Exerb-CC 2.6.0 — Yuya Kato <yuya-ml@4th.to> 2003/03/04

Yuyaです。

[#37058] Re: Local variables & blocks — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

27 messages 2003/02/05
[#37059] Re: Local variables & blocks — ichimal@... 2003/02/06

皆様、初めまして鈴木です。

[#37063] Re: Local variables & blocks — matz@... (Yukihiro Matsumoto) 2003/02/07

まつもと ゆきひろです

[#37110] Re: Local variables & blocks — ichimal@... 2003/02/16

鈴木です。

[#37115] Re: Local variables & blocks — Tanaka Akira <akr@...17n.org> 2003/02/17

In article <200302161629.h1GGTvJ5008901@fenix.ne.jp>,

[#37123] 私はこれにハマリました。 — Shin-ichiro HARA <sinara@...> 2003/02/18

原です。

[ruby-list:37116] Re: 配列とべき集合

From: UENO Katsuhiro <unnie@...>
Date: 2003-02-17 12:19:02 UTC
List: ruby-list #37116
うえのです。

On Mon, 17 Feb 2003 20:20:34 +0900
Masahiro Sato <msato@echem.titech.ac.jp> wrote:

> 配列からべき集合をつくるメソッドがないかと検索したら、
> ruby-talkにはあったのですが日本語のほうには
> なかったのでこちらに投稿(?)しておこうと思います。
snip..
> いちおう正しく動くと思いますが、
> もっといいアルゴリズムがあるのではないかと思います。
> そういうのがあったら、もしくは既存のメソッドがあれば
> 教えてください。

べき集合しか求められませんが、こんなのは如何でしょう。

class Array
  def power
    ret = []
    0.upto(2**size - 1) { |n|
      a = []
      each { |i|
        a.push i if n & 1 == 1
        n >>= 1
      }
      ret.push a
    }
    ret
  end
end

p [].power      # => [[]]
p [1].power     # => [[],[1]]
p [1,2].power   # => [[], [1], [2], [1, 2]]
p [1,2,3].power # => [[], [1], [2], [1, 2], [3], [1, 3], [2, 3], [1, 2, 3]]



 --  ----  -     - - -- -
うえの かつひろ <unnie@blue.sky.or.jp>

In This Thread