Cod sursa(job #3312796)

Utilizator alexmbBolos Alexandru Matei alexmb Data 29 septembrie 2025 22:48:42
Problema Secventa 5 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
int v[1000001],f[1000001];

int main()
{
    int n,i,st,dr,k,a=0,minn=INT_MAX,u,l;
    long long nr=0;
    fin>>n>>l>>u;
    for(i=1;i<=n;i++)
    {
        fin>>v[i];
        if(v[i]<minn) minn=v[i];
    }
    minn--;
    st=1;
    dr=1;
    for(dr=1;dr<=n;dr++)
    {
        if(f[v[dr]-minn]==0) a++;
        f[v[dr]-minn]++;
        while(a>=u && st<dr)
        {
            f[v[st]-minn]--;
            if(f[v[st]-minn]==0) a--;
            st++;
        }
        if(a>l) nr+=dr-st+1;
    }
    fout<<nr;

    return 0;
}