while True:
    try:
        flow = int(input().split()[1])
        cascade = [int(litres) for litres in input().split()]
    except:
        break

    L = cascade[0]
    f = 1
    new_cascade = []
    for i in cascade[1:]:
        if i > L/f:
            L += i
            f += 1
        else:
            new_cascade.append((L, f))
            L = i
            f = 1
    new_cascade.append((L, f))

    while True:
        cascade, new_cascade = new_cascade, []
        L, f = cascade[0]
        for i in cascade[1:]:
            if i[0]/i[1] > L/f:
                L += i[0]
                f += i[1]
            else:
                new_cascade.append((L, f))
                L = i[0]
                f = i[1]
        new_cascade.append((L, f))
        if len(new_cascade) == len(cascade):
            break
    L, f = new_cascade[-1]
    print(L/f/flow, max(c[0]/c[1] for c in new_cascade)/flow)
