#include <bits/stdc++.h>
using namespace std;
long long _power(long long a, long long n) {
  long long p = 1;
  while (n > 0) {
    if (n % 2) {
      p = p * a;
    }
    n >>= 1;
    a *= a;
  }
  return p;
}
long long _power(long long a, long long n, long long mod) {
  long long p = 1;
  while (n > 0) {
    if (n % 2) {
      p = p * a;
      p %= mod;
    }
    n >>= 1;
    a *= a;
    a %= mod;
  }
  return p % mod;
}
long long _gcd(long long a, long long b) { return b ? _gcd(b, a % b) : a; }
long long _max(long long a, long long b) {
  if (a > b) {
    return a;
  } else {
    return b;
  }
}
long long _modI(long long a, long long m) { return _power(a, m - 2, m); }
void _out(vector<long long> arr) {
  for (auto i : arr) {
    cout << i << ' ';
  }
  cout << "\n";
}
void _out(vector<pair<long long, long long>> par) {
  for (auto i : par) {
    cout << i.first << " " << i.second << "\n";
  }
}
void _out(set<long long> arr) {
  for (auto i : arr) {
    cout << i << ' ';
  }
  cout << "\n";
}
long long mod = 1000000007;
const long long N = 1e6 + 7;
void solve() {
  long long n, m;
  ;
  cin >> n >> m;
  vector<long long> a(m);
  for (long long i = 0; i < m; i++) cin >> a[i];
  vector<long long> ans(n + 2, 0);
  for (long long i = 0; i < m - 1; i++) {
    long long l = a[i];
    long long r = a[i + 1];
    if (l == r) continue;
    if (l > r) swap(l, r);
    ans[1] += (r - l);
    ans[l] -= (r - l);
    ans[l + 1] += r - l - 1;
    ans[r] -= r - l - 1;
    ans[r + 1] += r - l;
    ans[n + 1] -= r - l;
    ans[l] += r - l + l - 1;
    ans[l + 1] -= r - l + l - 1;
    ans[r] += l;
    ans[r + 1] -= l;
  }
  for (long long i = 0; i < n; i++) {
    ans[i + 1] += ans[i];
  }
  for (long long i = 0; i < n; i++) {
    cout << ans[i + 1] << " ";
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long t = 1;
  while (t--) {
    solve();
  }
}
