10
-405 -230 252 -393 -390 -259 97 163 81 -129
 3
10000 -10000 10000
 1
-10000
 20
-16 -23 29 44 -40 -50 -41 34 -38 30 -12 28 -44 -49 15 50 -28 38 -2 0

702.333333333333712
 10000.000000000016371
 0.000000000000000
 113.875000000000043

n=int(input())
l=list(map(int,input().split()))
po=min(l)
ki=max(l)
mi=0
while po<ki:
  s=(po+ki)/2
  su=ma=0
  for x in l:
    su+=x-s
    if su<0: su=0
    if su>ma: ma=su
  su=mi=0
  for x in l:
        su-=x-s
        if su<0: su=0
        if su>mi: mi=su
  if mi==ma: break
  if mi>ma: ki=s-1
  if mi<ma: po=s+1
print("%.6f"%mi)