Pagini recente » Cod sursa (job #2543855) | Cod sursa (job #647662) | Cod sursa (job #3134588) | Cod sursa (job #390822) | Cod sursa (job #2958388)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
#define cin fin
#define cout fout
#define N 2000005
#define power 73
#define mod 66666013
#define oo 1e18
long long n, l, u, v[N];
map < long long , long long > f;
long long fa(long long dif)
{
f.clear();
long long st = 1, rez = 0, acum = 0;
for(long long i = 1 ; i <= n ; i++)
{
f[v[i]]++;
if(f[v[i]] == 1)acum++;
while(acum > dif && st <= i)
{
f[v[st]]--;
if(f[v[st]] == 0)acum--;
st++;
}
rez += i-st+1;
}
return rez;
}
int main()
{
cin >> n >> l >> u;
for(long long i = 1 ; i <= n ; i++)cin >> v[i];
cout << fa(u)-fa(l-1);
return 0;
}