用于计算 Python 中项目列表的所有排列的所有特殊值的平均值的程序
假设我们有一个元素列表,我们可以通过以下算法计算S的值。
while size of L > 1 is non-zero, do a := L[0] b := L[1] remove L[1] L[0] := a + b + a*b return L[0] mod (10^9 + 7)
在这里,我们必须找到从L的所有可能组合计算的所有S值的平均值。
所以,如果输入像L=[5,3,4],那么输出将是199,因为对于L的所有排列,S的值是119,所以它们的平均值也是119。
示例
让我们看看以下实现以获得更好的理解-
def solve(L): m = 10**9+7 li = [x+1 for x in L] prod = 1 for i in li: prod *= i prod %= m return (prod-1) % m L = [5,3,4] print(solve(L))
输入
[5,3,4]输出结果
119