#include #include #include #include #include FILE *in; int n=0,num=0; int scene,rx[30],ry[30],r[30],ref,hit; double x,y,dx,dy; double sqreq(double p, double q) { double wurz=p*p/4.0-q,res; if(wurz<0.0) return -1e30; res=(-p/2.0)-sqrt(wurz); return res; } double thehit(int k){ double Dx,Dy,p,q,res; Dx=x-rx[k]; Dy=y-ry[k]; p=2*(Dx*dx+Dy*dy)/(dx*dx+dy*dy); q=(Dx*Dx+Dy*Dy-r[k]*r[k])/(dx*dx+dy*dy); res=sqreq(p,q); return res; } int clhit() { int k=0,i; double tmin=1e38,t; for(i=1;i<=n;i++) { t=thehit(i); if( (t>1e-30) && (t