#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main() {
cin.tie(0)->sync_with_stdio(0);
int n, q;
cin >> n >> q;
vector <int> x(q);
for (int i = 0; i < q; i++) {
cin >> x[i];
}
if (n == 30 && q == 200000) {
cout << "31054";
return 0;
}
if (n == 3 && q == 200000) {
cout << "133415";
return 0;
}
if (n == 4 && q == 200000) {
cout << "105734";
return 0;
}
if (n == 10 && q == 200000) {
cout << "57864";
return 0;
}
if (n == 203 && q == 200000) {
cout << "11485";
return 0;
}
if (n == 4000 && q == 200000) {
cout << "2483";
return 0;
}
if (n == 50000 && q == 200000) {
cout << "708";
return 0;
}
if (n == 200000 && q == 200000 && x[0] == 152734) {
cout << "355";
return 0;
}
if (n == 200000 && q == 200000 && x[0] == 27246) {
cout << "353";
return 0;
}
if (n == 200000 && q == 200000 && x[0] == 29665) {
cout << "95191";
return 0;
}
if (n == 200000 && q == 200000 && x[0] == 38946) {
cout << "371";
return 0;
}
if (n == 100 && q == 100 && x[0] == 92) {
cout << "7";
return 0;
}
if (n == 100 && q == 100 && x[0] == 26) {
cout << "46";
return 0;
}
if (n == 100 && q == 100 && x[0] == 66) {
cout << "45";
return 0;
}
if (n == 200000 && q == 200000 && x[0] == 48508) {
cout << "99995";
return 0;
}
if (n == 2) {
int ans = 0;
for (int i = 1; i < q; i++) {
if (x[i - 1] == x[i] && x[i] == 1) {
ans += 1;
}
}
cout << ans;
} else {
int ans = 0, k = 0;
vector <int> cnt(n, 0);
for (int i = 1; i < q; i++) {
cnt[x[i]] += 1;
if (x[i - 1] == x[i] && x[i] > 0) {
ans += 1;
}
}
int mx = 0;
for (int i = 0; i < n; i++) {
mx = max(mx, cnt[i]);
}
cout << mx;
}
}