一人一张的消费券
题号:NC206654
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

UPUP市为了促进经济发展,推出了非常实惠的消费券政策,市里的每个人都可以免费得到一张面值为 a 或 b , 的消费券,这些消费券都等同于同样面值的UPUP市当前流通货币。

现在有 n 个人去电影院看电影,已知电影票价格恰好为上面提到的 a。这 n 个人排成一队去买票,即一次只能有一个人买票。但是电影院之前已经把所有钱赔光了,即电影院当前账户余额为 0。电影院的收费方式是直接收走消费券,将多出的钱 (可能为 0) 通过微信返回。

已知这些人会等概率随机排列,问能让电影院对每个人都能成功找零的概率。

成功找零即对每个人来说必须是立即结算的,也即必须在下一个人开始买之前找零。

输入描述:

- 一行,两个非负整数 
- 一行,两个正整数

输出描述:

输出一个小数 p,代表能成功找零的概率,当答案与标准答案的绝对值差小于  时,认为答案正确
示例1

输入

复制
2 3
2 4

输出

复制
0.4000000

说明

编号为1,2为a,编号3,4,5为b
1 2 3 4 5
1 3 5 4 2
2 3 5 4 1
都是合法的
即使是拿着一类消费券的人也是不同的