hi everyone. I get 10 WA in 10096.
I have some qns.
if there is any special case for fission & fussion?
for fussion if d==r1+r2; .. what should be the output?
if 0(zero) can be a input?from prev.. post i saw that the output for this input
S 0.0 0.0 0.0 is 0.0000----> is it correct?
in fission if the initial virus's radious R >(l,w) then what should i do:
for fission i do following work in my code
Code: Select all
void fission(double l, double w, double R)
{
if(w>l)
{
double t=l;
l=w;
w=t;
}
if(R > 0 && R<=l && R<=w)
{
double r = R/sqrt(2);
if((l>=4*r) && (w>=2*r))
{
double a = l-2*r , b = w-2*r;
double c = sqrt(a*a + b*b);
printf("%.4lf\n",c);
}
else
printf("Not enough space for fission.\n");
}
else if(R==0&&w==0&&l==0)
{
double g=0;
printf("%.4lf\n",g);
}
else
printf("Not enough space for fission.\n");
}
[/b]for fussion i do following job..
void len(double r, double R, double d)
{
if(d >= (r+R))
{
printf("1.0000\nNo compaction has occured.\n");
}
else
{
if(r !=0 && R !=0 && d != 0)
{
double a1 = (d*d) + (r*r) - (R*R) ,a2 = d*d+R*R-r*r,a3=2*d*r,a4=2*d*R;
double b1 = a1/a3, b2 = a2/a4 ,b3 = -d+r+R ,b4=d+r-R,b5=d-r+R,b6=d+r+R;
double c1 = r*r*acos(b1),c2=R*R*acos(b2),c3=b3*b4*b5*b6;
double c4 = (sqrt(c3))/2;
double z = c1+c2-c4;
double com = (M_PI*r*r +M_PI*R*R -z) / (M_PI*r*r+M_PI*R*R);
if(com==1.0000)
printf("1.0000\nNo compaction has occurred.\n");
else
printf("%.4lf\n",com);
}
else
printf("1.0000\nNo compaction has occurred.\n");
}
}
plz help me