Pagini recente » Cod sursa (job #3181744) | Cod sursa (job #898800) | Cod sursa (job #2318927) | Cod sursa (job #991120) | Cod sursa (job #215997)
Cod sursa(job #215997)
#define sz 2<<20
#include<vector>
using namespace std;
vector<bool> s(2<<30,false);
#include<stdio.h>
int n,v,lv,app[sz];
int main()
{
int i,l,u,last,ilast;
l=u=0;
freopen("secv5.in","r",stdin);
freopen("secv5.out","w",stdout);
last=ilast=0;
scanf("%lld %lld %lld %lld",&n,&l,&u,&lv);
app[0]=1;
int sum=0;
for(i=1;i<n;i++)
{
scanf("%lld",&v);
if(v!=lv&&!s[v])
app[i]=app[i-1]+1;
else
app[i]=app[i-1];
s[v]=true;
lv=v;
if(app[i]>=l&&app[i]<=u)
{
if(!last)
{last=n-(n-i);ilast=1;}
else
if(i-ilast>=l&&i-ilast<u){last++;ilast=i;}
sum+=last;
}
}
printf("%d",sum);
}