Pagini recente » Cod sursa (job #862043) | Cod sursa (job #1225156) | Cod sursa (job #6683) | Cod sursa (job #1318429) | Cod sursa (job #2306619)
#include <bits/stdc++.h>
#define N 1100000
using namespace std;
ifstream fin("secv5.in") ;
ofstream fout("secv5.out") ;
unsigned int v[N] ,n;
long long f(long long k)
{
unordered_map<unsigned int,int> mp;
int i = 1 , j ;
long long sol =0 ;
for ( j = 1 ; j <= n ; j++ )
{
mp[v[j]]++ ;
if ( mp[v[j]] == 1 )
ct++ ;
while ( mp.size() > k )
{
mp[v[i]]-- ;
if ( mp[v[i]] == 0 )
mp.erase(v[i]) ;
i++;
}
sol = 1LL*(sol + j-i+1) ;
}
return sol ;
}
int main()
{
unsigned int l , r , x , i ;
fin >> n >> l >> r ;
for ( i = 1 ; i <= n ; i++ )
{
fin >> x ;
v[i] = x ;
}
fout << 1LL*(f(r)-f(l-1)) ;
}