Pagini recente » Cod sursa (job #2866390) | Cod sursa (job #187749) | Cod sursa (job #1528398) | Cod sursa (job #2483224) | Cod sursa (job #3196032)
#include <bits/stdc++.h>
using namespace std;
#define cin fin
#define cout fout
ifstream fin("secv5.in");
ofstream fout("secv5.out");
int n, x, y;
vector <int> v;
long long sub(int k){
unordered_map <int, int> m;
int l = 1; long long ans = 0, cnt = 0;
for(int r = 1; r <= n; ++r){
if(++m[v[r]] == 1){
++cnt;
while(cnt > k){
if(--m[v[l]] == 0){
--cnt;
}
++l;
}
}
ans += r - l;
}
return ans;
}
int main(){
cin >> n >> x >> y;
v.resize(n + 1);
for(int i = 1; i <= n; ++i){
cin >> v[i];
}
cout << sub(y) - sub(x - 1);
return 0;
}