Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <algorithm>
- using namespace std;
- int main() {
- int t;
- cin >> t;
- vector <int> vec(1000001, 0);
- vector <int> a(200001);
- for (int dd = 0; dd < t; dd++) {
- int n, k, d;
- cin >> n >> k >> d;
- for (int i = 0; i < 200001; i++)
- vec[i] = 0;
- for (int i = 0; i < n; i++)
- cin >> a[i];
- int diff = 0;
- int ans = 2000001;
- for (int i = 0; i < n; i++) {
- if (i < d) {
- if (vec[a[i]] > 0)
- vec[a[i]]++;
- else {
- vec[a[i]]++;
- diff++;
- }
- }
- else {
- vec[a[i - d]]--;
- if (vec[a[i - d]] == 0)
- diff--;
- if (vec[a[i]] > 0)
- vec[a[i]]++;
- else {
- vec[a[i]]++;
- diff++;
- }
- ans = min(ans, diff);
- }
- }
- ans = min(ans, diff);
- cout << ans << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement