Pagini recente » Cod sursa (job #2441647) | Istoria paginii runda/teqquila_shot | Cod sursa (job #2364007) | Cod sursa (job #2246312) | Cod sursa (job #1561710)
#include <bits/stdc++.h>
#define int64 long long
using namespace std;
ifstream in("secv5.in");
ofstream out("secv5.out");
unsigned a[1111111],n,x,y,k;
vector<unsigned> v;
int64 solve(int64 t)
{
vector<unsigned> v(k+1);
int64 sol=0,last=1,cnt=0;
for(unsigned i=1;i<=n;i++)
{
if(v[a[i]]==0)
cnt++;
v[a[i]]++;
while(cnt>t)
{
v[a[last]]--;
if(v[a[last]]==0)
cnt--;
last++;
}
sol+=(i-last+1);
}
return sol;
}
int main()
{
in>>n>>x>>y;
map<int64,unsigned> h;
for(unsigned i=1;i<=n;i++)
{
int64 nr;
in>>nr;
if(h[nr]==0)
h[nr]=++k;
a[i]=h[nr];
}
out<<solve(y)-solve(x-1)<<'\n';
return 0;
}