知恵袋の二組に組分けする問題をrubyで解いてみた。

 知恵袋の二組に組分けする問題rubyで解いてみました。

A〜Jを二組に組分けした全ケースの組あわせ252パターンを標準出力に出力するプログラムをrubyでお願いします。

 全ての組合せが252パターンになるようなので、1組当たり5人ずつで、組には区別があるようです。(^_^;

● Grouping.rb

#! ruby -Ks
# Grouping.rb

n = 0
c = ('A'..'J').to_a
c.combination(5) do |a|
  b = c-a	# 差集合
  n += 1
  print("%3d : %s %s\n"%[n, a.join(""), b.join("")])
end

●実行結果

  1 : ABCDE FGHIJ
  2 : ABCDF EGHIJ
  3 : ABCDG EFHIJ
   …(省略)…
250 : EFHIJ ABCDG
251 : EGHIJ ABCDF
252 : FGHIJ ABCDE

※参考URL
RubyやJavaScriptでの配列の差集合・和集合・積集合

たのしいRuby 第4版

たのしいRuby 第4版