Pagini recente » Cod sursa (job #3184425) | Cod sursa (job #1908949) | Cod sursa (job #1977164) | Cod sursa (job #25592) | Cod sursa (job #3185772)
#include <fstream>
#include <map>
using namespace std;
ifstream cin("secv5.in");
ofstream cout("secv5.out");
int n, i, v[1048577], u, x;
int count (int mx) {
long long ans = 0;
int frq[1048577];
for (int uis = 0 ; uis < 1048577; uis++)
frq[uis] = 0;
int l = 1, cnt = 0;
for (int r = 1; r <= n; r++) {
if (++frq[v[r]] == 1){
cnt++;
while (cnt > mx && l <= r) {
if (--frq[v[l]] == 0)
cnt--;
l++;
}
}
ans += r - l + 1;
}
return ans;
}
int main()
{
cin >> n >> x >> u;
for (i = 1; i <= n; i++)
{
cin >> v[i];
}
cout << count(u) - count(x - 1);
return 0;
}