Pagini recente » Cod sursa (job #2050519) | Cod sursa (job #58292) | Cod sursa (job #20999) | Cod sursa (job #1412597) | Cod sursa (job #1573961)
#include <fstream>
#include <unordered_map>
using namespace std;
int n, l, u;
unsigned int v[1048576];
unordered_map<unsigned int, unsigned int> h;
long long int secv5(int up)
{
h.clear();
long long int ret = 0, j = 0;
for (int i = 0; i < n; i++)
{
h[v[i]]++;
while (h.size() > up)
{
h[v[j]]--;
if (!h[v[j]])
h.erase(v[j]);
j++;
}
ret += (i - j + 1);
}
return ret;
}
void citeste()
{
ifstream f("secv5.in");
f >> n >> l >> u;
for (int i = 0; i < n; i++)
f >> v[i];
f.close();
}
int main()
{
citeste();
ofstream out("secv5.out");
out << secv5(u) - secv5(l - 1);
out.close();
}