func_code_string: #include <bits/stdc++.h>   using namespace std;   double a, v, l, d, w, t1, t2, t3, t4, t5, dis1, dis2, dis3, v1;   double chuli(double x) {     double diss = (v + w) * ((v - w) / a) / 2;     if (diss >= x)       return (-2.0 * w + sqrt(4.0 * w * w + 8.0 * a * (x))) / (2.0 * a);     else       return (v - w) / a + (x - diss) / v;   }   int main() {     cin >> a >> v >> l >> d >> w;     if (v >= w) {       t1 = w / a;       dis1 = a * t1 * t1 / 2;       v1 = a * sqrt(2 * d / a);       if (dis1 >= l)         printf( %.12lf n , sqrt(2.0 * l / a));       else if (dis1 >= d)         printf( %.12lf n , t1 + chuli(l - dis1));       else {         dis2 = 2 * (v - w) / a * w + (v - w) * (v - w) / a;         if (dis1 + dis2 >= d) {           t2 = 2.0 * (-2.0 * w + sqrt(4.0 * w * w + 4.0 * a * (d - dis1))) /                (2.0 * a);           t3 = chuli(l - d);           printf( %.12lf n , t1 + t2 + t3);         } else {           t2 = v / a;           t3 = (v - w) / a;           t4 = (d - dis2 - dis1) / v;           t5 = chuli(l - d);           printf( %.12lf n , t2 + t3 + t4 + t5);         }       }     } else {       t1 = v / a;       dis1 = a * t1 * t1 / 2;       if (dis1 < l)         t2 = (l - dis1) / v;       else {         t1 = sqrt(2 * l / a);         t2 = 0.0;       }       printf( %.12lf n , t1 + t2);     }     return 0;   }   