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])
看题解知道曾经题面有误,但好像已经改过了