Pagini recente » Cod sursa (job #946391) | Cod sursa (job #2507039) | Cod sursa (job #2958700) | Cod sursa (job #2167208) | Cod sursa (job #3274007)
#include <fstream>
#include <stack>
#include <queue>
#include <cmath>
#include <algorithm>
#include <iostream>
#include <set>
#include <cstring>
#include <map>
#include <string>
#include<iomanip>
#include<bitset>
#include<unordered_map>
#define oo 2000000000
#define MOD 777013
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
long long a[150585], l, u, n, k, rez;
unordered_map<long long, long long>m;
long long nrsecv(long long k)
{
int i = 1, j = 1, cnt = 0,sum=0;
m.clear();
while (i <= n)
{
if (m[a[i]] == 0)
cnt++;
m[a[i]]++;
if (cnt > k)
{
m[a[j]]--;
if (m[a[j]] == 0)
{
cnt--;
}
j++;
}
sum += (i - j + 1);
i++;
}
return sum;
}
int main()
{
fin >> n >> l >> u;
for (int i = 1; i <= n; i++)
{
fin >> a[i];
}
fout<<nrsecv(u)-nrsecv(l-1);
}