Pagini recente » Cod sursa (job #2699734) | Cod sursa (job #2583585) | Cod sursa (job #226805) | Cod sursa (job #723016) | Cod sursa (job #3185785)
#include <fstream>
#include <unordered_map>
using namespace std;
ifstream cin("secv5.in");
ofstream cout("secv5.out");
int v[1<<20];
int n;
int catesecv(int x){
int r,l,nr=0,rasp;
unordered_map<long long,int>frecv;
rasp=r=l=0;
while(r<n){
frecv[v[r]]++;
if(frecv[v[r]]==1)
nr++;
r++;
while(nr>x){
frecv[v[l]]--;
if(frecv[v[l]]==0)
nr--;
l++;
}
rasp=rasp+r-l;
}
return rasp;
}
int main()
{
int i,ll,uu;
cin>>n>>ll>>uu;
for(i=0;i<n;i++)
cin>>v[i];
cout<<catesecv(uu)-catesecv(ll-1);
return 0;
}