import sys from fractions import Fraction from typing import List, Tuple int1 = lambda x: int(x) - 1 input = lambda: sys.stdin.readline().rstrip('\n') ii = lambda: int(input()) vi = lambda: list(map(int, input().split())) vi1 = lambda: list(map(int1, input().split())) def dbg(*args, **kwargs): print(*(repr(arg) for arg in args), *(f'{k}: {repr(v)}' for k, v in kwargs.items()), sep='; ', file=sys.stderr, flush=True) def med(x): n = len(x) if n % 2 == 1: return x[n // 2] else: return Fraction(x[n // 2] + x[(n - 1) // 2], 2) def main(): n = ii() a = sorted(vi()) q2 = med(a) q1 = med(a[:n // 2]) q3 = med(a[(n + 1) // 2:]) iqr = q3 - q1 u = sum(x < q1 - Fraction(3, 2) * iqr or x > q3 + Fraction(3, 2) * iqr for x in a) print(float(q1), float(q2), float(q3), u) def _start(): if (ret := main()) is not None: print(*ret) if isinstance(ret, List) or isinstance(ret, Tuple) else print(ret) if __name__ == '__main__': _start()