Can somebody please find out mistake in my solution ? I compared with those which were accepted, my equation matches, and the way i wrote the equation in quadratic, there is no chance of getting overflow in data types. I would be really glad if someone finds a mistake I believe there is not a single error in my solution.
Here is an AC solution: https://www.codechef.com/viewsolution/18890702
long long int l3=k1k1+k2k2-radius*radius;
long long int l1=k2*k2+k3*k3-radius*radius; long long int l2=k1*k1+k3*k3-radius*radius; long long int b=2*(b1*l1*dx+b2*l2*dy+b3*l3*dz-k2*k3*(b2*dz+b3*dy)-k1*k2*(b1*dy+b2*dx)-k1*k3* b1*dz+b3*dx)); long long int a=(dx*dx*l1+dy*dy*l2+dz*dz*l3-2*k2*k3*dy*dz-2*k1*k3*dz*dx-2*k1*k2*dy*dx); long long int c=(b1*b1*l1+b2*b2*l2+b3*b3*l3-2*k2*k3*b2*b3-2*k1*k3*b1*b3-2*k1*k2*b1*b2);
In the above lines, k2k2+k3k3, since both are long long and multiplication causes overflow.
You should have written 1.0 * k2 * k2 + 1.0 * k3 * k3 and made variables long double.
You should have written
Note the brackets in 2 * a * 1.0.
You have not used \n after printf.