Pagini recente » Cod sursa (job #104582) | Cod sursa (job #2293541) | Cod sursa (job #905602) | Cod sursa (job #2015440) | Cod sursa (job #3319488)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
#define pb push_back
int a[(1<<20)+1],n;
unordered_map<int,int> mp;
long long subsecv(int mad){
int st=1;
int dr;
long long cnt=0;
mp.clear();
for(dr=1;dr<=n;dr++){
mp[a[dr]]++;
while((int)mp.size()>mad){
mp[a[st]]--;
if(mp[a[st]]==0)
mp.erase(a[st]);
st++;
}
if (st>dr)
dr=st;
cnt+=(dr-st);
}
return cnt;
}
int main(){
int L,U;
fin>>n>>L>>U;
for(int i=1;i<=n;++i){
fin>>a[i];
}
fout<<subsecv(U)-subsecv(L-1);
}