#include <bits/stdc++.h>
using namespace std;
int getCount(int n,vector<int>arr,int k){
int count=0;
unordered_map<int,int>mp;
int j=0;
for(int i=0;i<n;i++){
mp[arr[i]]++;
int s=mp.size();
while(s>k){
mp[arr[j]]--;
if(mp[arr[j]]==0){
mp.erase(arr[j]);
}
j++;
s=mp.size();
}
count=count+(i-j+1);
}
return count;
}
int main() {
// your code goes here
int n;
cin>>n;
vector<int>arr(n,0);
for(int i=0;i<n;i++){
cin>>arr[i];
}
int k;
cin>>k;
cout<<"The number of subarrays with distinct elemets less tha k is:"<<getCount(n,arr,k);
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBnZXRDb3VudChpbnQgbix2ZWN0b3I8aW50PmFycixpbnQgayl7CglpbnQgY291bnQ9MDsKCXVub3JkZXJlZF9tYXA8aW50LGludD5tcDsKCWludCBqPTA7Cglmb3IoaW50IGk9MDtpPG47aSsrKXsKCSAgICAgbXBbYXJyW2ldXSsrOwoJICAgICBpbnQgcz1tcC5zaXplKCk7CgkgICAgIHdoaWxlKHM+ayl7CgkgICAgIAltcFthcnJbal1dLS07CgkgICAgIAlpZihtcFthcnJbal1dPT0wKXsKCSAgICAgCQltcC5lcmFzZShhcnJbal0pOwoJICAgICAJfQoJICAgICAJaisrOwoJICAgICAJcz1tcC5zaXplKCk7CgkgICAgIH0KCSAgICAgY291bnQ9Y291bnQrKGktaisxKTsKCX0KCXJldHVybiBjb3VudDsKfQogCmludCBtYWluKCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJaW50IG47CgljaW4+Pm47Cgl2ZWN0b3I8aW50PmFycihuLDApOwoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJY2luPj5hcnJbaV07Cgl9CglpbnQgazsKCWNpbj4+azsKCWNvdXQ8PCJUaGUgbnVtYmVyIG9mIHN1YmFycmF5cyB3aXRoIGRpc3RpbmN0IGVsZW1ldHMgbGVzcyB0aGEgayBpczoiPDxnZXRDb3VudChuLGFycixrKTsKCXJldHVybiAwOwp9