#include<bits/stdc++.h>
using namespace std;
int ans(vector<int>&v,int k){
unordered_map<int,int>m;int c=0;
int i=0;int j=0;
while(j<v.size()){
m[v[j]]++;
while(m.size()>k){
m[v[i]]--;
if(m[v[i]]==0)m.erase(v[i]);
i++;
}
c+=j-i+1;
j++;
}
return c;
}
int main(){
int n;cin>>n;
vector<int>v(n);
for(int i=0;i<n;i++)cin>>v[i];
int k;cin>>k;
cout<<ans(v,k)<<endl;
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IGFucyh2ZWN0b3I8aW50PiZ2LGludCBrKXsKICAgIHVub3JkZXJlZF9tYXA8aW50LGludD5tO2ludCBjPTA7CiAgICBpbnQgaT0wO2ludCBqPTA7CiAgICB3aGlsZShqPHYuc2l6ZSgpKXsKICAgICAgICBtW3Zbal1dKys7CiAgICAgICAgd2hpbGUobS5zaXplKCk+ayl7CiAgICAgICAgICAgIG1bdltpXV0tLTsKICAgICAgICAgICAgaWYobVt2W2ldXT09MCltLmVyYXNlKHZbaV0pOwogICAgICAgICAgICBpKys7CiAgICAgICAgfQogICAgICAgIGMrPWotaSsxOwogICAgICAgIGorKzsKICAgICAgICAKICAgIH0KICAgIHJldHVybiBjOwp9CgppbnQgbWFpbigpewogICAgaW50IG47Y2luPj5uOwogICAgdmVjdG9yPGludD52KG4pOwogICAgZm9yKGludCBpPTA7aTxuO2krKyljaW4+PnZbaV07CgogICAgaW50IGs7Y2luPj5rOwogICAgY291dDw8YW5zKHYsayk8PGVuZGw7CiAgICByZXR1cm4gMDsKfQ==