Pagini recente » Cod sursa (job #1907138) | Cod sursa (job #1522217) | Cod sursa (job #2367552) | Cod sursa (job #1738580) | Cod sursa (job #2990410)
#include <bits/stdc++.h>
using namespace std;
#define int long long
ifstream in("secv5.in");
ofstream out("secv5.out");
const int N = 1050000;
int n;
int v[N + 5];
int ceva(int a) {
unordered_map<int, int> f;
int ans = 0;
int cnt = 0;
int l = 1, r;
for(r = 1; r <= n; ++ r) {
if(f[v[r]] == 0)
cnt++;
f[v[r]] ++;
while(cnt > a && l <= r) {
f[v[l]] --;
if(f[v[l]] == 0)
cnt --;
l ++;
}
ans += r - l + 1;
}
return ans;
}
int32_t main() {
int l, u;
in >> n >> l >> u;
for(int i = 1; i <= n; ++ i) {
in >> v[i];
}
out << ceva(u) - ceva(l - 1);
return 0;
}