在Python中查找具有n个或更少点的概率
假设我们正在玩一款独特的游戏,我们有三个值n,k和h。我们从0分开始,然后可以随机选择1到h(含)之间的数字,将获得那么多的分数。我们在得分至少为k分时停止。我们必须找出我们得到n个或更少分数的概率。在这里,任何数字都可以随机选择,并且所有结果的概率都相同。
因此,如果输入如下 n = 2, k = 2, h = 10,则输出将为0.11。
要解决此问题,我们将按照以下步骤进行 –
- 定义函数dp()。这将采取路径。
- 如果路径与k-1相同,则
- 返回(n – k + 1和h的最小值)/ h
- 如果路径>n,则
- 返回0
- 如果路径> = k,则
- 返回1
- 返回dp(path + 1)-(dp(path + h + 1)- dp(path + 1))/ h
- 如果路径与k-1相同,则
-
从主函数中执行以下操作 –
-
如果k为零,则
- 返回1
- 如果n
- 返回0
- 返回dp(0)
以下是更好地理解的实现 –
更多Python相关文章,请阅读:Python 教程