Pagini recente » Cod sursa (job #1161696) | Cod sursa (job #935642) | Cod sursa (job #80058) | Cod sursa (job #963919) | Cod sursa (job #1474532)
#include<fstream>
#include<map>
#define dim (1<<20) + 2
using namespace std;
ifstream f("secv5.in");
ofstream g("secv5.out");
long long n,L,U,rez,a,b;
unsigned int i,j,v[dim];
map<unsigned int, unsigned int>H;
inline long long Secv(int nr)
{
rez=0;
for(i=j=0;i<n;++i)
{
++H[v[i]];
while(H.size()>nr)
{
--H[v[j]];
if(!H[v[j]]) H.erase(v[j]);
++j;
}
rez+=1LL*(i-j+1);
}
return rez;
}
int main()
{
f>>n>>L>>U;
for(;i<n;++i) f>>v[i];
a=Secv(U);
H.clear();
b=Secv(L-1);
g<<a-b;
return 0;
}