Pagini recente » Cod sursa (job #1054728) | Cod sursa (job #3138603) | Cod sursa (job #2526658) | Cod sursa (job #2299365) | Cod sursa (job #3275705)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
int n;
unsigned int a[1050000];
long long F(int u)
{
int st,dr,nr;
long long v1=0;
unordered_map <unsigned int, int> m;
st=1;
nr=0;
for(dr=1;dr<=n;dr++)
{
if(m[a[dr]]==0)
nr++;
m[a[dr]]++;
while(u<nr)
{
if(m[a[st]]==1)
nr--;
m[a[st]]--;
st++;
}
v1+=(dr-st+1);
}
return v1;
}
int main()
{
int i,l,u;
ios::sync_with_stdio(0);
fin.tie(0);
fin>>n>>l>>u;
for(i=1;i<=n;i++)
fin>>a[i];
fout<<F(u)-F(l-1);
return 0;
}