php - 素材配布のアルゴリズムについてアドバイスを求める
PHPz
PHPz 2017-05-24 11:33:26
0
2
1214

今、質問に答えるための資料を入手するアクティビティがあり、合計 3 日間です。
4 種類の資料 1、2、3、4。資料4は希少資料です。
正解すると、プレイヤーに資料が配布されます。資料 4 は 1 日目には出現せず、資料 4 は 2 日目には 50 部まで配布されます。このイベントでは、マテリアル 4 は 200 部までしか出現しません (当選者リストは 200 人以内に制限される必要があるため)
マテリアル 4 を入手したプレイヤーは、マテリアル 4 を獲得するために、以前に 1、2、および 3 を収集している必要があります。賞品
マテリアルを割り当てるアルゴリズムはどのように記述するのが最適ですか?

PHPz
PHPz

学习是最好的投资!

全員に返信(2)
淡淡烟草味

これはジンゲフの遊び方に過ぎません。 123 個を自由に与えることができ、数量を制限する必要はなく、4 個の数量を制御するだけです。初日は3つの賞品があり、次の2日間で4つの賞品がありました。抽選では、その日の制限を超えるかどうかを決定するために4を引きます。超えた場合は、1、2、3のいずれかをランダムに返すだけです。

いいねを押す +0
漂亮男人

このようなことはやったことがありませんが、個人的な考えを述べさせていただきます
抽選の利用者数や各素材(非素材4)のデータは決定できないため
素材4の2番目のペアが表示され、 1日目には出現せず、2日目は50以下、イベント終了時には200以下
つまり、マテリアル4の確率はマテリアル1、2、3から分離されます。素材4の確率を計算します。そうでない場合は、1、2、3を計算します(乱数を直接使用しても大丈夫です)

変数には、
マテリアル 4 の合計数、アクティビティの開始時刻、終了時刻、現在時刻、2 日目に表示されるマテリアル 4 の数、および抽出されたコードが含まれます

コード
1日目かどうか判断
はい、素材4の確率は0、ランダムに123を割り当てます
いいえ、2日目かどうか判断します
はい、素材4が引かれる総数が50を超えているかどうかを判断します。はい、直接ランダムに 123 を割り当てます。そうでない場合は、マテリアル 4 の確率を計算します。マテリアル 4 の確率は、マテリアル 4 の残りの合計数を分子として、現在の描画の総数を分母として基にすることができます。分母が低くなりすぎないように、最小値を設定する必要があります。材料 4 が計算できない場合、ランダムに割り当てられた材料 123
は、1 日目または 2 日目が 3 日目と同様になります。 2日目の計算

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート