def int_ternary_search(f, lo: int, hi: int) -> int: l = lo r = hi while r - l > 3: m1 = l + (r - l) // 3 m2 = r - (r - l) // 3 if f(m1) > f(m2): l = m1 else: r = m2 ind = l best = f(l) for i in range(l, r+1): v = f(i) if v < best: best = v ind = i return ind INF = 1 << 60 B = int(input()) N = int(input()) C = [int(input()) for _ in range(N)] C.sort(reverse=True) def f(v: int) -> int: t = B res = 0 for c in C: if c > v: # 多い t += c - v res += c - v elif c < v: # 少ない if v - c > t: return INF t -= v - c res += v - c return res lo = min(C) hi = max(C) res = int_ternary_search(f, lo, hi) print(f(res))