Input

There are multiple test cases. In every test cast, there are four float-point numbers:

a, b, r1, r2

where, a and b are two sides of the rectangle, r1 and r2 are radii of the two circls.


Output

Print a "Yes", if the circles can be put into the rectangle. Otherwise, print a "No".

You can safely assume x < y, where x and y are float-point numbers, if x < y + 0.01.


Sample Input

5 4 1 1
5 4 1.5 2


Sample Output

Yes
No


一个矩形里放两个圆,显然一个放左上一个放右下,然后判断是否可行即可。

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
float a,b,r1,r2;

int main()
{
while(~scanf("%f%f%f%f",&a,&b,&r1,&r2))
{
if (a<r1+r1+0.01||b<r1+r1+0.01) {puts("No"); continue;}
if (a<r2+r2+0.01||b<r2+r2+0.01) {puts("No"); continue;}
float x=a-r1-r2,y=b-r1-r2;
if (sqrt(x*x+y*y)<r1+r2+0.01) puts("No");
else puts("Yes");
}
return 0;
}