#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long int n, m, k;
  cin >> n >> m >> k;
  long long int a[n + 1];
  for (int i = 1; i <= n; i++) cin >> a[i];
  map<long long int, long long int> count;
  set<pair<long long int, long long int> > s;
  long long int ans = 0;
  for (int i = 1; i <= n; i++) {
    s.insert({0, a[i]});
  }
  int j = 1;
  for (int i = 1; i <= n; i++) {
    s.erase({count[a[i]], a[i]});
    count[a[i]]++;
    s.insert({count[a[i]], a[i]});
    while (i - j + 1 - k > s.rbegin()->first) {
      s.erase({count[a[j]], a[j]});
      count[a[j]]--;
      j++;
      s.insert({count[a[j]], a[j]});
    }
    ans = max(ans, s.rbegin()->first);
  }
  cout << ans << endl;
}
