Pagini recente » Cod sursa (job #2976353) | Cod sursa (job #3246407) | Cod sursa (job #3243937) | Cod sursa (job #3188719) | Cod sursa (job #2647307)
#include <bits/stdc++.h>
#define int unsigned long long // imi bag pula
using namespace std;
vector <int> v;
unordered_map <int, int> Hash;
int n, l, u;
unsigned long long go (int x) {
Hash.clear();
unsigned long long ans = 0;
auto poz = v.begin();
for (auto it = v.begin(); it != v.end(); ++it) {
++Hash[*it];
while (Hash.size() > x) {
if (--Hash[*poz] == 0)
Hash.erase(*poz);
poz++;
}
ans += it - poz + 1;
}
return ans;
}
signed main () {
freopen("secv5.in", "r", stdin);
freopen("secv5.out", "w", stdout);
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
cin >> n >> l >> u;
v.resize(n);
for (auto &it: v)
cin >> it;
cout << go(u) - go(l - 1);
return 0;
}