Pagini recente » Cod sursa (job #399019) | Cod sursa (job #2603129) | Cod sursa (job #223900) | Cod sursa (job #3166868) | Cod sursa (job #2441571)
#include <iostream>
#include <fstream>
#include <deque>
#include <unordered_map>
using namespace std;
ifstream f("secventa5.in");
ofstream g("secventa5.out");
int n,l,u,a[1<<21];
long long Count(int x)
{
int i,nr=0;
long long sol=0;
deque <int> dq;
unordered_map <int,int> mp;
for(i=1;i<=n;i++)
{
if(mp.count(a[i])==0)
{
nr++;
}
dq.push_back(a[i]);
mp[a[i]]++;
while(nr>x)
{
mp[dq.front()]--;
if(mp[dq.front()]==0)
{
nr--;
}
dq.pop_front();
}
sol=sol+dq.size();
}
return sol;
}
int main()
{
int i;
f>>n>>l>>u;
for(i=1;i<=n;i++)
{
f>>a[i];
}
g<<Count(u)-Count(l-1);
return 0;
}