1 #include <cstdio>
2 #include <cstring>
3 #include <cmath>
4 #include <algorithm>
5 using namespace std;
6 const double eps=1e-9;
7
8 double getarea(double a,double b,double c)
9 {
10 double p=(a+b+c)/2.0;
11 return (c*c/4+sqrt(p*(p-a)*(p-b)*(p-c)));
12 }
13
14 int main()
15 {
16 double x,y;
17 scanf("%lf%lf",&x,&y);
18 double l=x+y,r=sqrt(x*x+y*y),s1;
19 while(fabs(r-l)>eps)
20 {
21 double mid1=(r+l)/2;
22 double mid2=(mid1+l)/2;
23 s1=getarea(x,y,mid1);
24 double s2=getarea(x,y,mid2);
25 if(s1>s2)
26 l=mid2;
27 else
28 r=mid1;
29 }
30 printf("%.9lf\n",s1);
31 return 0;
32 }