Wizardに尋ねる #221
ディーラーアドオンは、登録時にお支払いいただく追加オプション料金です。このアドオン料金は、トーナメントのディーリングにかかった時間に対する報酬としてディーラーに支払われます。通常、開始チップが2000枚ではなく2500枚追加されます。デイブさんの意見に賛成です。さらに付け加えると、トーナメントでリバイやワイルドカード購入といったオプション料金でプレイヤーを巻き上げることにも反対です。ただし、これらの料金が何らかの形でプレイヤーに返金される場合を除きます。通常は返金されません。もしトーナメントがカジノにとって利益にならないのであれば、見せかけの行為はやめて、プレイヤーに前払いで参加費を支払わせるだけで十分です。アドオンを購入するかどうかに関わらず、チップを渡すかどうかは常に任意であるべきです。もしアドオンを購入していたら、チップを渡す気持ちは薄れていたでしょう。ちなみに、私はいつもアドオンを購入しています。EVの観点から数学的に正しいかどうかは分かりませんが、そもそもトーナメントに参加するのであれば、そうするのが良いように思えます。
ディーラーへの追加チップがなければ、勝者がディーラーにチップを渡すのは適切だと思います。強いて言えば、勝ち金の1~2%程度で、勝ち金が少ないほど割合は大きくなります。今回の状況では、ディーラーへの追加チップの合計額と私の勝ち金の合計額に対する割合を掛け合わせた額だけチップを差し引きます。もしチップがゼロ、あるいはマイナスになってしまうなら、それはジレンマです。レストランで18~20%のチップを義務付けている時と同じように、見た目だけのために少額を渡すのが私のやり方でしょう。
これは、平均値を平均化することが危険であることを示しています。片道が時速400マイル、反対側が時速600マイルの場合、平均速度が時速500マイルとは言えません。時速400マイルの区間の方が長い期間にわたっているからです。
これが直感的に分かりにくい場合は、時速500マイル(約800キロメートル)の風を考えてみてください。風だけで飛行機は1時間で移動しますが、逆方向だと止まってしまい、永遠にかかることになります。
N = log(1 - DC)/ log(1 - p)、ここで
DC = イベントが発生する確実性の度合い
P = イベントの確率
N = 試行回数
しかし、その問題を解くのに必ずしもその式を使う必要はありません。次のように設定することもできます。
.05 = (1-0.00002476) n
n
log(.05) = n × log(1-.00002476)
-1.301 = n × -0.000010753
n = 120,989
int GetIndex(int c1, int c2, int c3, int c4, int c5)
{
return combin(c5,5) + combin(c4,4)+ combin(c3,3) + combin(c2,2) + combin(c1,1);
}
combin は従来の値を返しますが、最初の値が 2 番目の値より小さい場合を除き、次のように 0 を返します。
int 結合(int x, int y)
{
もし (y>x)
0を返します。
それ以外
{
整数 i,n;
1 の場合
(i=x-y+1; i<=x; i++) の場合
n*=i;
(i=2; i<=y; i++) の場合
n/=i;
n を返します。
}
}
配列要素にアクセスするためにこれを行う場合は、次のように配列をロードします。
カウント=0;
(c5 = 4; c5 < 52; c5++) の場合
{
(c4 = 3; c4 < c5; c4++) の場合
{
(c3 = 2; c3 < c4; c3++) の場合
{
(c2 = 1; c2 < c3; c2++) の場合
{
(c1 = 0; c1 < c2; c1++) の場合
{
index_array[count]=WhateverYouWish;
カウント++;
}
}
}
}
}