Pagini recente » Cod sursa (job #1525156) | Cod sursa (job #2877229) | Cod sursa (job #270190) | Cod sursa (job #388355) | Cod sursa (job #3270464)
#include <bits/stdc++.h>
using namespace std;
int v[10000005];
int okbro(int a, int n)
{
long long ans = 0;
unordered_map<int, int> f;
int l = 0, cnt = 0;
for (int r = 0; r < n; r ++)
{
f[v[r]] ++;
if (f[v[r]] == 1)
{
cnt ++;
while (cnt > a)
{
f[v[l]] --;
if (f[v[l]] == 0)
cnt --;
l ++;
}
}
ans += r - l + 1;
}
return ans;
}
int main()
{
ifstream cin("secv5.in");
ofstream cout("secv5.out");
long long n, a, b; cin >> n >> a >> b;
for (int i = 0; i < n; i ++)
cin >> v[i];
cout << okbro(b, n) - okbro (a - 1, n);
return 0;
}