py 70分 #1,3,4报错
  • 板块P1409 骰子
  • 楼主Wu_hRay
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/9/11 18:19
  • 上次更新2024/9/11 21:27:38
查看原帖
py 70分 #1,3,4报错
34341
Wu_hRay楼主2024/9/11 18:19
n, m = list(map(int, input().split()))

a = [[0.0 for j in range(i + 1)] for i in range(n)]

a[0][0] = 1.0

for i in range(1, n):
    a[i][0] = 1 / 6
    
    for j in range(1, i + 1):
        a[i][0] += 1 / (pow(2, i) * 3) * a[i - 1][j - 1]
    a[i][0] /= (1 - 1 / pow(2, i + 1))
    
    if i == n - 1 and m == 1:
        break
    
    for j in range(1, i + 1):
        a[i][j] = 1 / 2 * a[i][j - 1] + 1 / 3 * a[i - 1][j - 1]
        
        if i == n - 1 and j == m - 1:
            break

print("%.9f" %a[n - 1][m - 1])

看题解知道曾经题面有误,但好像已经改过了

2024/9/11 18:19
加载中...