Pagini recente » Cod sursa (job #1993028) | Cod sursa (job #2469319) | Cod sursa (job #499182) | Cod sursa (job #781559) | Cod sursa (job #3270435)
#include <fstream>
#include <map>
using namespace std;
ifstream cin("secv5.in");
ofstream cout("secv5.out");
int v[1100005];
map <int, int> m;
int main()
{
int n, l, u, x=-1, y=-1, cnt=0, rez=0;
cin>>n>>l>>u;
for(int i=0; i<n; i++)
{
cin>>v[i];
}
while(y<n-1)
{
if(m[v[y+1]]==0)
{
cnt++;
if(cnt<=u)
{
if(l<=cnt)
rez++;
y++;
m[v[y]]++;
}
else
{
if(m[v[x]]==1)
cnt--;
m[v[x]]--;
x++;
}
}
else
{
y++;
m[v[y]]++;
}
}
cout<<rez+n-x;
return 0;
}