A,B,C,D = map(int,input().split())
N = 14
from math import inf
from functools import lru_cache
@lru_cache(None)
def dfs(a,b,c,d,x,y):
if a > 13 or b > 13 or c > 13 or d > 13 :
return inf
a_s = a + int(x == 0) + int(y == 0)
b_s = b + int(x == 1) + int(y == 1)
c_s = c + int(x == 2) + int(y == 2)
d_s = d + int(x == 3) + int(y == 3)
if a_s >= A and b_s >= B and c_s >= C and d_s >= D:
return 0
s = 54 - (a + b + c + d + int(x != 4) + int(y != 4)) # 剩余卡牌数量
if s <= 0:
return inf
ans = 1 # 翻一张
if a < 13:
ans += (13 - a) / s * dfs(a + 1,b,c,d,x,y) # 抽到a
if b < 13:
ans += (13 - b) / s * dfs(a,b + 1,c,d,x,y) # 抽到b
if c < 13:
ans += (13 - c) / s * dfs(a,b,c + 1,d,x,y) # 抽到c
if d < 13:
ans += (13 - d) / s * dfs(a,b,c,d + 1,x,y) # 抽到d
if x == 4:
t = inf
for i in range(4):
t = min(t,1 / s*dfs(a,b,c,d,i,y))
ans += t
if y == 4:
t = inf
for i in range(4):
t = min(t,1 / s * dfs(a,b,c,d,x,i))
ans += t
return ans
ans = dfs(0,0,0,0,4,4)
ans = ans if ans < inf else -1.000
print('%.3f'%ans)