PDD笔试,第三题AC【Python版本】

N = int(input())
X = [int(x) for x in input().split(' ')]

ans = 0
base = 1
for x in X:
    base *=x

while sum(X)!=0:
    m = max(X)
    # 计算重复次数
    rep = X.count(m)
    # 计算乘积
    mul = 1
    for x in X:
        mul *=x
    mul /= m**rep
    cnt = m**rep - (m-1)**rep
    ans += m*cnt*mul
    # 每一个m都要-1
    for i,x in enumerate(X):
        if x == m:
            X[i] -= 1

print('%.2f'%(ans/base))

#笔试题目##拼多多#
全部评论

相关推荐

09-19 12:15
门头沟学院 Java
猫头夜鹰:请问收到意向要点接受拒绝吗,还是开奖之后再接受拒绝
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务