Ruby初心者スレッドPart8
■ このスレッドは過去ログ倉庫に格納されています
0497デフォルトの名無しさん
2006/11/03(金) 23:22:33というハッシュがあるとき,Aが40%,Bが30%,Cが20%,Dが10%の確率になるように
ABCDを取り出したいのですがいい方法を教えてください
以下のような方法でも一応できたけどコストが大きすぎです
matched = false
while !matched
key = table.keys.sort_by{rand}.pop #キーをランダムに取得
if table[key] > rand #比較
#このときのkeyをつかう
matched = true
...
end
end
■ このスレッドは過去ログ倉庫に格納されています