Codeforces

https://codeforc.es/contest/77/problem/B

用求根公式得到:
(p-4qgeq0)

换成熟悉的元:
(y-4xgeq0)

其中:
(x:[-b,b],;y:[0,a])

那么画个图就发现其实就要算一下面积。

需要注意的是面积为0的情况下,就退化成线段上的几何概型甚至就一个点了。


草,printf里面%f不会自动把1转换成浮点数,会输出0。以后所有浮点都加上小数点!都第几次了?

void TestCase(int ti){
    double a,b;
    scanf("%lf%lf",&a,&b);
    if(fabs(a*b)<1e-8){
        if(fabs(a)<1e-8&&fabs(b)<1e-8){
            printf("%.10f
",1.0);
        }
        else if(fabs(a)<1e-8){
            printf("%.10f
",0.5);
        }
        else{
            printf("%.10f
",1.0);
        }
    }
    else if(b>=a/4.0){
        printf("%.10f
",(a+8.0*b)/(16.0*b));
    }
    else{
        printf("%.10f
",(a-b)/a);
    }
}
原文地址:https://www.cnblogs.com/Yinku/p/11047244.html