我对角度三分的方法参考这篇博客,QAQ
#include <stdio.h>
#include <math.h>
#define eps 1e-8
#define pi acos(-1.0)
double x,y,l,w;
double work(double b){
return (- x + l * sin(b) + w / cos(b)) / tan(b);
}
void solve(){
double left = 1e-10,right = pi/2,mid1,mid2;
for(int i=1;i<100;i++){
mid1 = left / 3 * 2 + right / 3;
mid2 = left / 3 + right / 3 * 2;
if(work(mid1)<work(mid2)){
left = mid1;
}
else
right = mid2;
}
if(work(right)<y)
puts("yes");
else
puts("no");
}
void input(){
while(~scanf("%lf %lf %lf %lf",&x,&y,&l,&w)){
solve();
}
}
void File(){
freopen("a.in","r",stdin);
freopen("a.out","w",stdout);
}
int main(void){
//File();
input();
return 0;
}