func_code_string: #include <bits/stdc++.h>   using namespace std;   int n;   double a[200005], b[200005];   double l = -10001, r = 10001;   const double eps = 2e-12;   double solve(double x) {     for (int i = 1; i <= n; ++i) b[i] = a[i] - x;     double res = 0, tmp = 0;     for (int i = 1; i <= n; ++i) {       if (tmp < 0) tmp = 0;       tmp += b[i];       res = max(res, tmp);     }     tmp = 0;     for (int i = 1; i <= n; ++i) {       if (tmp < 0) tmp = 0;       tmp -= b[i];       res = max(res, tmp);     }     return res;   }   int main() {     scanf( %d , &n);     for (int i = 1; i <= n; ++i) {       scanf( %lf , &a[i]);     }     while (r > eps + l) {       double ll = (2 * l + r) / 3, rr = (l + 2 * r) / 3;       double lll = solve(ll);       double rrr = solve(rr);       if (lll < rrr)         r = rr;       else         l = ll;     }     cout << fixed << setprecision(12) << solve((l + r) / 2) << endl;   }   