10種類のカードをコンプするのにかかるガチャ回数の分布をSqueak Smalltalkで - Smalltalkのtは小文字です」をRubyで試してみた。

$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
cards = (1..10).to_a
hist = []

1000.times do |i|
  player_cards = []
  begin
    player_cards.push cards.sample
  end until (cards - player_cards).size == 0
  hist.push player_cards.size
end

hist.sort.chunk{|n|n}.each do |n, c|
  printf "%3d: %s\n", n, '#' * c.size
end
 10: #
 11: #
 12: ##
 13: ###########
 14: ###########
 15: ##############
 16: ##########################
 17: #############################
 18: #################################
 19: ###############################################
 20: ##########################################
 21: #####################################
 22: #########################################
 23: ###################################################
 24: ######################################################
 25: #########################################
 26: ###############################
 27: #################################
 28: ##################################
 29: #####################################
 30: ####################################
 31: ###############################
 32: ###################################
 33: ##########################
 34: ################################
 35: ###################################
 36: ################
 37: #################
 38: ###############
 39: #################
 40: ##############
 41: ######################
 42: #############
 43: ########
 44: ########
 45: ###########
 46: ############
 47: #######
 48: ##########
 49: ##########
 50: #####
 51: ####
 52: #####
 53: ####
 54: ###
 55: ###
 56: ##
 57: #
 58: #####
 60: ##
 61: #
 62: ####
 63: ##
 64: #
 66: ##
 69: #
 71: #
 75: #
 85: #
131: #