#include <bits/stdc++.h>
using namespace std;
const double eps = 0.000001;
const long double pi = acos(-1);
const int maxn = 1e7 + 9;
const int mod = 1e9 + 7;
const long long MOD = 1e18 + 123;
const long long INF = 1e18 + 9;
const int minn = 1e5 + 9;
const int N = 5e3 + 123;
const int NN = 5e6 + 123;
const int PRI = 555557;
const int pri = 997;
int n, a[NN], ans, pref[NN], k, j, t[NN * 4];
void build(int v, int tl, int tr) {
  if (tl == tr) {
    t[v] = a[tl];
  } else {
    int tm = (tl + tr) / 2;
    build(v * 2, tl, tm);
    build(v * 2 + 1, tm + 1, tr);
    t[v] = max(t[v * 2], t[v * 2 + 1]);
  }
}
int get(int l, int r, int v = 1, int tl = 1, int tr = n) {
  if (tl > r || tr < l) return -1;
  if (tl >= l && tr <= r) {
    return t[v];
  }
  int tm = (tl + tr) / 2;
  return max(get(l, r, v * 2, tl, tm), get(l, r, v * 2 + 1, tm + 1, tr));
}
int main() {
  cin >> n >> k >> j;
  for (int i = 1; i <= n; i++) {
    cin >> a[i];
  }
  build(1, 1, n);
  for (int i = 1; i <= n - j + 1; i++) {
    if (get(i, i + j - 1) <= k) ans++;
  }
  cout << ans;
}
