def J(): return map(int,input().split()) L,N=J() X=list(J())+[L] E=set() F={0} O={X[0]} for i in range(1,N+1): G=set() for x in O:E.add(x),G.add(x-X[i]) for x in F:O.add(x+X[i]) F|=G print(min(abs(x*2-L)for x in E))