func_code_string: #include <bits/stdc++.h>   using namespace std;   double dot(complex<double> a, complex<double> b) { return real(conj(a) * b); }   double calcspeed(complex<double> p1, complex<double> p2, complex<double> w,                    double vmax) {     complex<double> r = p2 - p1;     double k =         dot(r, w) + sqrt(pow(dot(r, w), 2) - norm(r) * (norm(w) - vmax * vmax));     k /= abs(r);     return k;   }   double calc(complex<double> p1, complex<double> p2, complex<double> w,               double vmax) {     double speed = calcspeed(p1, p2, w, vmax);     return abs(p2 - p1) / speed;   }   int main() {     int x1, y1, x2, y2;     cin >> x1 >> y1 >> x2 >> y2;     double vmax, t;     cin >> vmax >> t;     int vx, vy, wx, wy;     cin >> vx >> vy >> wx >> wy;     if (x1 == x2 && y1 == y2) {       cout << 0 << endl;       return 0;     }     complex<double> r(x2, y2), v(vx, vy), w(wx, wy);     double ret = calc(complex<double>(x1, y1), complex<double>(x2, y2), v, vmax);     if (ret < t) {       printf( %.20f n , ret);       return 0;     }     r -= complex<double>(x1, y1);     v /= r;     w /= r;     vmax /= abs(r);     r /= r;     const double pi = acos(-1);     double low = -pi + 1e-6;     double high = pi - 1e-6;     double f = 0;     for (int i = (0); i < (200); i++) {       double mid1 = (low * 2 + high) / 3;       double mid2 = (low + high * 2) / 3;       complex<double> target1 = polar(200.0, mid1);       complex<double> target2 = polar(200.0, mid2);       complex<double> speed1 = calcspeed(complex<double>(0, 0), target1, v, vmax);       complex<double> speed2 = calcspeed(complex<double>(0, 0), target2, v, vmax);       complex<double> point1 = speed1 * target1 / abs(target1) * t;       complex<double> point2 = speed2 * target2 / abs(target2) * t;       double f1 = calc(point1, r, w, vmax);       double f2 = calc(point2, r, w, vmax);       if (f1 > f2) {         low = mid1;         f = f1;       } else {         high = mid2;         f = f2;       }     }     printf( %.20f n , f + t);     return 0;   }   