Pagini recente » Cod sursa (job #2584333) | Cod sursa (job #1111711) | Cod sursa (job #660374) | Cod sursa (job #210269) | Cod sursa (job #3276183)
#include <bits/stdc++.h>
using namespace std;
int v[2000005];
unordered_map<long long,int> f;
int main()
{
ifstream cin("secv5.in");
ofstream cout("secv5.out");
int n,a,b;
cin>>n>>a>>b;
for(int i=1;i<=n;++i)
{
cin>>v[i];
}
int c1=0,c2=0;
int nr=0;
int j=1;
for(int i=1;i<=n;++i)
{
f[v[i]]++;
if(f[v[i]]==1)
{
++nr;
}
while(nr>b)
{
f[v[j]]--;
if(f[v[j]]==0)
{
--nr;
}
++j;
}
c1=c1+i-j+1;
}
nr=0;
f.clear();
j=1;
--a;
for(int i=1;i<=n;++i)
{
f[v[i]]++;
if(f[v[i]]==1)
{
++nr;
}
while(nr>a)
{
f[v[j]]--;
if(f[v[j]]==0)
{
--nr;
}
++j;
}
c2=c2+i-j+1;
}
cout<<c1-c2;
return 0;
}