Pagini recente » Cod sursa (job #2696932) | Cod sursa (job #3280606) | Cod sursa (job #2350402) | Cod sursa (job #2908483) | Cod sursa (job #3270456)
#include <bits/stdc++.h>
#define int long long
using namespace std;
int v[1100005];
signed main()
{
ifstream cin("secv5.in");
ofstream cout("secv5.out");
unordered_map<int, int> f;
int n, x, y, cnt=0, l=1, rez=0, rez2=0;
cin>>n>>x>>y;
for(int i=1; i<=n; i++)
{
cin>>v[i];
}
for(int r=1; r<=n; r++)
{
f[v[r]]++;
if(f[v[r]]==1)
{
cnt++;
while(cnt>y)
{
f[v[l]]--;
if(f[v[l]]==0)
cnt--;
l++;
}
}
rez+=r-l+1;
}
f.clear();
cnt=0; l=1;
for(int r=1; r<=n; r++)
{
f[v[r]]++;
if(f[v[r]]==1)
{
cnt++;
while(cnt>x-1)
{
f[v[l]]--;
if(f[v[l]]==0)
cnt--;
l++;
}
}
rez2+=r-l+1;
}
cout<<rez-rez2;
return 0;
}