-3

これは homwork ではなく、プログラミング コンテストで遭遇した問題ですが、解決策を見つけることができませんでした。

バイトランド王国には、1..N の番号が付けられた N 個の都市が含まれています。都市 i ごとに、国王はその都市の年間維持費にいくらかのお金を割り当てます。割り当てられる金額は、ai (その都市に必要な最小額) と bi (その都市に割り当てることができる最大額) の間でランダムに選択されます。都市に割り当てられた金額は整数である必要はないことに注意してください。今年徴収された税金の合計は C.

王国が今年赤字を出す確率は?

4

1 に答える 1

1

私はこれが正しい声明だと思います:

バイトランド王国には、1..N の番号が付けられた N 個の都市が含まれています。都市 i ごとに、国王はその都市の年間維持費にいくらかのお金を割り当てます。割り当てられる金額は、ai (その都市に必要な最小額) と bi (その都市に割り当てることができる最大額) の間でランダムに選択されます。都市に割り当てられた金額は整数である必要はないことに注意してください。今年徴収された税金の合計は C.

王国が今年赤字を出す確率は?言い換えれば、すべての都市に割り当てられた合計金額が徴収された税金の合計を超える確率は?

すべての割り当ての合計 x_0 + ... + x_i + ... + x_n U(a,b) が a と b の間の一様な数の場合 すべての割り当ての合計 U(0, b_0 - a_0) + a_0 + ... + U(0, b_i - a_i) + a_i + ... + U(0, b_n - a_n) + a_0 に等しい a_n + ... + a_i + ... + a_n + U(0 , b_0 - a_0) + ... + U(0, b_i - a_i) + ... + U(0, b_n - a_n) すべての値が既知です。一様分布を追加するための式も知られています (ここを確認してください): しかし、プログラミングの問題では、分析ソリューションを使用する必要はありませんが、十分な数を与える何かを実装します...モンテカルロなどを使用する必要があります確率をシミュレートするために...そして、U(0、k)= k * U(0、1)という事実を使用することもできます。合計の異なる値の確率を計算し、それらを C と比較します。

于 2012-07-15T06:08:56.853 に答える