Pagini recente » Cod sursa (job #408632) | Cod sursa (job #363923) | Cod sursa (job #1372112) | Cod sursa (job #1450049) | Cod sursa (job #1474537)
#include <fstream>
#include <unordered_map>
#define NMax (1<<20)+1
using namespace std;
ifstream f("secv5.in");
ofstream g("secv5.out");
int n,l,u;
unsigned int a[NMax];
unordered_map<unsigned int,unsigned int> H;
long long int until(int x)
{
H.clear();
long long int sum=0;
for(int i=1,j=1;i<=n;++i)
{
H[a[i]]++;
while(x<H.size())
{
H[a[j]]--;
if(!H[a[j]]) H.erase(a[j]);
j++;
}
sum=sum+(i-j+1);
}
return sum;
}
int main()
{
f>>n>>l>>u;
for(int i=1;i<=n;++i) f>>a[i];
g<<until(u)-until(l-1);
}