You are given a sequence of n integers *a*<sub class="lower-index">1</sub>, *a*<sub class="lower-index">2</sub>, ..., *a*<sub class="lower-index">*n*</sub>. 

Determine a real number *x* such that the weakness of the sequence *a*<sub class="lower-index">1</sub> - *x*, *a*<sub class="lower-index">2</sub> - *x*, ..., *a*<sub class="lower-index">*n*</sub> - *x* is as small as possible.

The weakness of a sequence is defined as the maximum value of the poorness over all segments (contiguous subsequences) of a sequence.

The poorness of a segment is defined as the absolute value of sum of the elements of segment.
The first line contains one integer *n* (1 ≤ *n* ≤ 200 000), the length of a sequence.

The second line contains *n* integers *a*<sub class="lower-index">1</sub>, *a*<sub class="lower-index">2</sub>, ..., *a*<sub class="lower-index">*n*</sub> (|*a*<sub class="lower-index">*i*</sub>| ≤ 10 000).
n = int(input())
a = list(map(int, input().split()))

def f(x):
    b = [ai - x for ai in a]
    low = 0
    up = 0
    s = 0
    res = 0
    for bi in b:
        s += bi
        low = min(low, s)
        up = max(up, s)
        res = max((res, s - low, up - s))
    return res

l = -10000
r = 10000
while r - l >= 1e-6:
    llr = (l * 2 + r) / 3
    lrr = (l + r * 2) / 3
    if f(llr) > f(lrr):
        l = llr
    else:
        r = lrr

print(f(r))
