Python程序从给定条件的指标随机变量计算函数

假设我们有两个值 k 和 n。考虑前 n 个自然数 1, 2, ..., n 的随机排列 p1, p2, ..., pn 并计算值 F,使得 F = (X2+...+Xn-1)k ,其中 Xi 是指标随机变量,当满足以下两个条件之一时为 1:pi-1 < pi > pi+1 或 pi-1 > pi < pi+1,否则 Xi 为 0。我们必须找到 F 的期望值。

所以,如果输入像 k = 1 n = 1000,那么输出将是 1996/3

示例

让我们看看以下实现以获得更好的理解 -

from math import gcd

def exp_factor(n,k):

   if k == 1:

      return (2*(n-2),3)

   elif k == 2:

      return (40*n**2 -144*n + 131,90)

   elif k == 3:

      return (280*n**3 - 1344*n**2 +2063*n -1038,945)

   elif k == 4:

      return (2800*n**4 - 15680*n**3 + 28844*n**2 - 19288*n + 4263, 14175)

   elif k == 5:

      return (12320*n**5 - 73920*n**4 + 130328*n**3 - 29568*n**2 - 64150*n -5124, 93555)

   return 1.0

def solve(k, n):

   M = n-2

   p = 2.0/3

   q = 1 - p

   num, den = exp_factor(n,k)

   g = gcd(num, den)

   return str(int(num/g))+'/'+str(int(den/g))

k = 1

n = 1000

print(solve(k, n))

输入

1, 1000
输出结果
1996/3

以上是 Python程序从给定条件的指标随机变量计算函数 的全部内容, 来源链接: utcz.com/z/338631.html

回到顶部