#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
const int INF = 1e7;
int LIS[maxn] = { 0 };
int main() {
int N, K;
cin >> N >> K;
vector<int> a(N + 2);
a[0] = INF;
a[N + 1] = 0;
for (int i = 1; i <= N; i++)
cin >> a[i];
LIS[N] = K;
int r = 0, l = 0;
for (int i = N; i >= K; i--)
{
r = 0;
l = 0;
if (i - K >= 1) {
l = 1;
for (int j = i - K; j >= 1; j--) {
if (a[j] >= a[j - 1])
l++;
else
break;
}
}
if (i + 1 <= N) {
r = 1;
for (int k = i + 1; k <= N; k++) {
if (a[k] <= a[k + 1])
r++;
else
break;
}
}
if (a[i - K] <= a[i + 1])
LIS[i] = max(LIS[i + 1], K + l + r);
else
LIS[i] = max(LIS[i + 1], K + max(l, r));
}
cout << LIS[K];
return 0;
}