POJ-1905

来源:互联网 发布:java中间件框架 编辑:程序博客网 时间:2024/05/20 21:23
#include <iostream>#include <math.h>#include <stdio.h>using namespace std;double PI=cos(-1.0);int main(){double L,n,C;    while(scanf("%lf%lf%lf",&L,&n,&C)!=EOF){    if(L<0&&n<0&&C<0)break;       double L2;  //      cin>>L>>n>>C;        L2=(1+n*C)*L;    double low=0;    double high=PI/2+1;//·¶Î§¿Óµù     double mid;    if(L<1e-13){    printf("0.000\n");            continue;}    while(low+1e-15<high){    mid=(low+high)/2;    if(mid-sin(mid)*(1+n*C)<0){    low=mid;}else {high=mid;}}double r=L2/(2*mid);//cout<<r-r*cos(mid)<<endl;printf("%.3f\n",r-r*cos(mid));        }    return 0;}

0 0
原创粉丝点击