拼多多概率计算
if __name__ == "__main__":
n = int(input().strip())
numbers = list(map(int, input().strip().split(' ')))
numbers.sort()
result_dict = dict()
tmp = 1
for num in numbers:
tmp *= (1/num)
result_dict[1] = tmp
for i in range(2, numbers[-1] + 1):
tmp = 1
for num in numbers: # 计算概率
if num >= i:
tmp *= (i/num)
for j in range(1,i):
tmp -= result_dict[j]
result_dict[i] = tmp
result = 0
for key, val in result_dict.items():
result += (key * val)
print('%.2f'%result)
#拼多多##笔试题目##题解#
查看8道真题和解析