Pagini recente » Cod sursa (job #2962614) | Cod sursa (job #2574440) | Cod sursa (job #942740) | Cod sursa (job #666428) | Cod sursa (job #3325728)
#include <fstream>
#include<algorithm>
#include<unordered_map>
using namespace std;
ifstream cin("secv5.in");
ofstream cout("secv5.out");
long long v[1048577],n;
unordered_map<long long,int>f;
long long an(int c){
int nrdis=0,l=1;
long long a=0;
f.clear();
for(int r=1;r<=n;r++){
f[v[r]]++;
if(f[v[r]]==1)nrdis++;
while(l<=r && nrdis>c){
f[v[l]]--;
if(f[v[l]]==0)nrdis--;
l++;
}
a+=r-l+1;
}
return a;
}
int main()
{
int x,y;
cin>>n>>x>>y;
for(int i=1;i<=n;i++){
cin>>v[i];
}
long long ans=an(y)-an(x-1);
cout<<ans;
return 0;
}