#!/usr/bin/env python3
n, F, f, m, E = int(input()) + 1, 2000000, [0] + list(map(int, input().split())), 10 ** 18, [0] * 4
T, P, t = list(map(int, input().split())), [f[i] if f[i] < f[i + 1] else F - f[i] for i in range(n - 1)], 0
q = [P[i] + abs(f[i + 1] - f[i]) + T[i] for i in range(n - 1)]
for x in ([[a, b, c] for a in range(n - 2) for b in range(n - 2) for c in range(n - 2)] + [-1]):
    for y in ([-1] if x == -1 else [[0, i, j] for i in range(2) for j in range(3)]):
        for o in (([] if y == -1 else [[1, r] for r in range(3)]) + [[0, r] for r in range(n - 1)]):
            if o[0]: E[o[1] + 1] = (E[y[o[1]]] + P[x[o[1]] + 1] - q[x[o[1]]]) % F
            else: t += min([(P[o[1]] - (e + t)) % F for e in E]) + abs(f[o[1] + 1] - f[o[1]]) + T[o[1]]
        m, t = exit(print(min(m, t))) if x == -1 else min(m, t), 0
