#include <cstdio>
#include <algorithm>
using namespace std;
const int N = 100005;
int a[N], b[N], buc[N], cnt, ans, n, k;
int main() {
scanf("%d%d", &n, &k);
for (int i = 1; i <= n; ++i) scanf("%d", &a[i]), b[i] = a[i];
std::sort(b + 1, b + n + 1);
for (int i = 1; i <= n; ++i) a[i] = lower_bound(b + 1, b + n + 1, a[i]) - b;
for (int l = 1, r = 1; r <= n; ++r) {
cnt += (buc[a[r]] == 0);
while (cnt > k + 1) {
ans = max(ans, buc[a[l]]);
cnt -= (buc[a[l]] == 1);
--buc[a[l]], ++l;
}
++buc[a[r]];
}
for (int i = 1; i <= n; ++i) ans = max(ans, buc[i]);
printf("%d\n", ans);
return 0;
}