#include <algorithm>
#include <cstdio>
#include <cmath>
#define int long long
using namespace std;
const int N = 2e5+10;
int n, m, ls[N], sz[2][N], cge[N], b[N], mn1 = 1e18l, ans = 0;
signed main()
{
scanf("%lld %lld", &n, &m);
for(int i = 1; i <= m; i++) scanf("%lld", &ls[i]);
for(int i = 1; i < m; i++)
{
sz[0][i] = abs(ls[i] - ls[i+1]);
sz[1][i] = n - sz[0][i];
cge[i] = abs(sz[0][i] - sz[1][i]);
}
for(int i = 1; i < m; i++)
{
int mn = min(ls[i], ls[i+1]), mx = max(ls[i], ls[i+1]);
ans += min(sz[0][i], sz[1][i]);
if(sz[0][i] > sz[1][i])
{
b[1] += cge[i];
b[mn] -= cge[i];
b[mx] += cge[i];
}
else
{
b[mn] += cge[i];
b[mx] -= cge[i];
}
}
for(int i = 1; i <= m; i++)
{
b[i] += b[i-1];
mn1 = min(mn1, b[i]);
}
printf("%lld\n", ans + mn1);
return 0;
}