Algorithm 在中奖者之间分配彩票的算法

Algorithm 在中奖者之间分配彩票的算法,algorithm,Algorithm,我正在建立一个博彩池系统,我必须在所有参与者之间分配奖金,根据他们获得的点击次数(对某项体育比赛的准确预测),点击次数越多意味着奖金越高 例如,如果我们想为该投注池分配1000硬币的头彩,我们可以使用以下分配: 在这种情况下,是否有任何算法可以计算给每位获奖者的奖金?在不知道如何分割奖金的情况下,一个选项是计算所有用户的总点击数,然后将头奖除以该数字,以找到授予每一次点击的奖金 然后,您只需浏览并给每个用户一个奖励,即这个数字乘以点击数。您可以简单地定义点击数所占的份额有多大 Hits, wi

我正在建立一个博彩池系统,我必须在所有参与者之间分配奖金,根据他们获得的点击次数(对某项体育比赛的准确预测),点击次数越多意味着奖金越高

例如,如果我们想为该投注池分配1000硬币的头彩,我们可以使用以下分配:


在这种情况下,是否有任何算法可以计算给每位获奖者的奖金?

在不知道如何分割奖金的情况下,一个选项是计算所有用户的总点击数,然后将头奖除以该数字,以找到授予每一次点击的奖金


然后,您只需浏览并给每个用户一个奖励,即这个数字乘以点击数。

您可以简单地定义点击数所占的份额有多大

Hits, winWeight, numberOfWinners
5,    24,        n(5)
4,    12,        n(4)
3,     4,        n(3)
2,     2,        n(2)
1,     1,        n(1)
然后将这些值与获奖人数相乘,得到:

total=24*n(5)+12*n(4)+4*n(3)+2*n(2)+1*n(1)
现在您可以计算出有多少硬币:

jackpot/total * 24  = pricePerWinner for 5 hits
jackpot/total * 12  = pricePerWinner for 4 hits
jackpot/total *  4  = pricePerWinner for 3 hits
jackpot/total *  2  = pricePerWinner for 2 hits
jackpot/total *  1  = pricePerWinner for 1 hit

计算总点击量

5*6 = 30
4*40 = 160
3*80 = 240
2*20 = 40
1*15 = 15
0*2 = 0
如果你把它们加起来,总数将达到

30+160+240+40+15+0=485
因为有1000个硬币可以中大奖

1000/485 ~= 2
这意味着每击一次,它将获得2枚硬币


5次点击意味着每个获胜者10枚硬币

没有更多信息,我们只能猜测。分布从哪里来?真正的彩票?如果是的话,总是会有文件记录钱是如何在赢家之间分配的。不,这是一个幻想游戏,分配是由我们定义的,这是我们试图定义的遵守解释的条件。你还没有解释所有的条件。你所说的是,点击率越高意味着奖品越大,但你没有给出任何关于如何确定奖品应该多大的指导。在您发布的示例中,获得第四次命中将使您的奖金从4增加到12;第五次命中只会加倍。无论是比例还是绝对利润都不遵循任何既定的支付方案。