## https://yukicoder.me/problems/no/2970 import math def main(): C0, C1, C2, C3 = map(int, input().split()) L, R = map(int, input().split()) def func(x): return C3 * x **3 + C2 * x ** 2 + C1 * x + C0 if C3 != 0: array = [] array.append(func(L)) array.append(func(R)) D = C2 ** 2 - 3 * C3 * C1 if D > 0: beta = (- C2 + math.sqrt(D)) / (3 * C3) if L <= beta <= R: array.append(func(beta)) alpha = (- C2 - math.sqrt(D)) / (3 * C3) if L <= alpha <= R: array.append(func(alpha)) elif D == 0: beta = - C2 / (3 * C3) if L <= beta <= R: array.append(func(beta)) elif C2 != 0: array = [] array.append(func(L)) array.append(func(R)) beta = -C1 / (2 * C2) if L <= beta <= R: array.append(func(beta)) else: array = [] array.append(func(L)) array.append(func(R)) array.sort() if array[0] > 0: print(array[0]) elif array[-1] < 0: print(abs(array[-1])) else: print(0.0) if __name__ == "__main__": main()