import java.util.*;
public class Main {
public static void main
(String[] args
) { Scanner sc
= new Scanner
(System.
in); int n = sc.nextInt();
int k = sc.nextInt();
int[] nums = new int[n];
for (int i = 0; i < n; i++) {
nums[i] = sc.nextInt();
}
int cnt = 0;
int sum = 0;
Map
<Integer, Integer
> map
= new HashMap
<>(); int i=0;
for (int j = 0; j < n; j++) {
map.put(nums[j], map.getOrDefault(nums[j], 0) + 1);
int d = map.size();
while (d > k) {
map.put(nums[i], map.get(nums[i]) - 1);
if (map.get(nums[i]) == 0) {
map.remove(nums[i]);
}
i++;
d = map.size();
}
cnt += (j - i + 1);
}
sc.close();
}
}
aW1wb3J0IGphdmEudXRpbC4qOwoKcHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIFNjYW5uZXIgc2MgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgICAgIGludCBuID0gc2MubmV4dEludCgpOwogICAgICAgIGludCBrID0gc2MubmV4dEludCgpOwogICAgICAgIAogICAgICAgIGludFtdIG51bXMgPSBuZXcgaW50W25dOwogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgICAgIG51bXNbaV0gPSBzYy5uZXh0SW50KCk7CiAgICAgICAgfQogICAgICAgIGludCBjbnQgPSAwOwogICAgICAgIGludCBzdW0gPSAwOwogICAgICAgIAogICAgICAgIE1hcDxJbnRlZ2VyLCBJbnRlZ2VyPiBtYXAgPSBuZXcgSGFzaE1hcDw+KCk7CiAgICAgICAgaW50IGk9MDsKICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IG47IGorKykgewogICAgICAgICAgICBtYXAucHV0KG51bXNbal0sIG1hcC5nZXRPckRlZmF1bHQobnVtc1tqXSwgMCkgKyAxKTsKICAgICAgICAgICAgaW50IGQgPSBtYXAuc2l6ZSgpOwogICAgICAgICAgICB3aGlsZSAoZCA+IGspIHsKICAgICAgICAgICAgICAgIG1hcC5wdXQobnVtc1tpXSwgbWFwLmdldChudW1zW2ldKSAtIDEpOwogICAgICAgICAgICAgICAgaWYgKG1hcC5nZXQobnVtc1tpXSkgPT0gMCkgewogICAgICAgICAgICAgICAgICAgIG1hcC5yZW1vdmUobnVtc1tpXSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpKys7CiAgICAgICAgICAgICAgICBkID0gbWFwLnNpemUoKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjbnQgKz0gKGogLSBpICsgMSk7CiAgICAgICAgfQogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjbnQpOwogICAgICAgIHNjLmNsb3NlKCk7CiAgICB9Cn0K