Cod sursa(job #3270434)

Utilizator ilincaSSirbu Ilinca Maria ilincaS Data 23 ianuarie 2025 14:11:58
Problema Secventa 5 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#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=0, 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+1;


    return 0;
}