Pagini recente » Cod sursa (job #196040) | Cod sursa (job #2519941) | Cod sursa (job #334852) | Cod sursa (job #866504) | Cod sursa (job #1313616)
#include<cstdio>
#include<vector>
#include<map>
#define MOD 666013
#define NMAX 1<<20+2
using namespace std;
int n,l,u;
int v[NMAX];
map<int, int> H;
long long sol(int x)
{
int i,j;
long long rez=0;
H.clear();
for (i=1,j=1;i<=n;++i)
{
++H[v[i]];
while(H.size()>x)
{
--H[v[j]];
++j;
if (H[v[j-1]]==0) H.erase(v[j-1]);
}
rez+=(i-j+1);
}
return rez;
}
int main()
{
freopen("secv5.in","r",stdin);
freopen("secv5.out","w",stdout);
scanf("%d%d%d",&n,&l,&u);
for (int i=1;i<=n;++i)
scanf("%d",&v[i]);
printf("%d\n",sol(u)-sol(l-1));
return 0;
}