local k_enshu, n_ken = io.read("*n", "*n")

local a_ie = {}
for i = 1, n_ken do
    a_ie[i] = io.read("*n")
end

local max_aida = 0
for i = 1, n_ken - 1 do
    local ie_aida = a_ie[i + 1] - a_ie[i] --math.maxを使った方が良かったかも。
    if ie_aida > max_aida then
        max_aida = ie_aida
    end
end
local ie_aida = k_enshu + a_ie[1] - a_ie[n_ken] --math.maxを使った方が良かったかも。
if ie_aida > max_aida then
    max_aida = ie_aida
end

print(k_enshu - max_aida)