Pagini recente » Cod sursa (job #10306) | Cod sursa (job #1762028) | Cod sursa (job #165713) | Cod sursa (job #3140302) | Cod sursa (job #2957536)
#include <bits/stdc++.h>
std::ifstream cin("secv5.in");
std::ofstream cout("secv5.out");
std::unordered_map<unsigned int,unsigned int>f;
unsigned int n,u,l,v[1048577];
long long raspunde(unsigned int a)
{
f.clear();
unsigned int ans=0;
unsigned int b=1,ff=0;
for(unsigned int e=1;e<=n;++e)
{
++f[v[e]];
if(f[v[e]]==1)
++ff;
while(ff>a&&b<=e)
{
--f[v[b]];
if(f[v[b++]]==0)
--ff;
}
ans+=e-b+1;
}
return ans;
}
int main()
{
cin>>n>>u>>l;
for(unsigned int i=1;i<=n;++i)
cin>>v[i];
long long z=raspunde(l),zz=raspunde(u-1);
cout<<z-zz;
return 0;
}