Problem description

SmallR is an archer. SmallR is taking a match of archer with Zanoes. They try to shoot in the target in turns, and SmallR shoots first. The probability of shooting the target each time is B - Archer for SmallR while B - Archer for Zanoes. The one who shoots in the target first should be the winner.

Output the probability that SmallR will win the match.

Input

A single line contains four integers B - Archer.

Output

Print a single real number, the probability that SmallR will win the match.

The answer will be considered correct if the absolute or relative error doesn't exceed 10 - 6.

Examples

Input

1 2 1 2

Output

0.666666666667
解题思路:等比数列极限求和。推导公式如下:
B - Archer

AC代码:
1 #include <bits/stdc++.h>
2 using namespace std;
3 int main(){
4     double a,b,c,d;
5     cin>>a>>b>>c>>d;
6     cout<<setiosflags(ios::fixed)<<setprecision(12)<<((a/b)*(1/(1-(1-a/b)*(1-c/d))))<<endl;
7     //printf("%.12f\n",(a/b)*(1/(1-(1-a/b)*(1-c/d))));
8     return 0;
9 }

 

相关文章: