#include <bits/stdc++.h>
using namespace std;
const int MAXN = 2000010;
int lol[MAXN];
int main() {
  int t;
  scanf("%d", &t);
  while (t--) {
    int n, k, d;
    scanf("%d%d%d", &n, &k, &d);
    for (int i = 1; i <= n; i++) scanf("%d", &lol[i]);
    map<int, int> uj;
    int ile = 0;
    for (int i = 1; i <= d; i++) {
      if (uj[lol[i]] == 0) ile++;
      uj[lol[i]]++;
    }
    int minw = ile;
    for (int i = d + 1; i <= n; i++) {
      if (uj[lol[i - d]] == 1) ile--;
      uj[lol[i - d]]--;
      if (uj[lol[i]] == 0) ile++;
      uj[lol[i]]++;
      minw = min(minw, ile);
    }
    printf("%d\n", minw);
  }
}
