问题 AF: 扑克牌

内存限制:128 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:4 通过:3

题目描述

Admin 生日那天,Rainbow 来找 Admin 玩扑克牌。

玩着玩着 Rainbow 觉得太没意思了,于是决定给 Admin 一个考验。

Rainbow 把一副扑克牌(54 张)随机洗开,倒扣着放成一摞。

然后 Admin 从上往下依次翻开每张牌,每翻开一张黑桃、红桃、梅花或者方块,就把它放到对应花色的堆里去。

Rainbow 想问问 Admin,得到 A张黑桃、B 张红桃、C 张梅花、D 张方块需要翻开的牌的张数的期望值 E 是多少?

特殊地,如果翻开的牌是大王或者小王,Admin 将会把它作为某种花色的牌放入对应堆中,使得放入之后 E 的值尽可能小。

由于 Admin 和 Rainbow 还在玩扑克,所以这个程序就交给你来写了。

输入格式


输入仅由一行,包含四个用空格隔开的整数,A,B,C,D。

输出格式


输出需要翻开的牌数的期望值 E,四舍五入保留 3 位小数。

如果不可能达到输入的状态,输出 -1.000。

数据范围

0≤A,B,C,D≤15

输入样例:

1 2 3 4

输出样例:

16.393

输入样例 复制

1 2 3 4

输出样例 复制

16.393