Cod sursa(job #2607177)

Utilizator PopescuAndreiAlexandruPopescu Andrei Alexandru PopescuAndreiAlexandru Data 29 aprilie 2020 14:11:17
Problema Secventa 5 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#include <queue>
#include <map>

using namespace std;

ifstream fin("secv5.in");
ofstream fout("secv5.out");

const int DIM = (1<<20)+5;

int n,l,u,v[DIM],nrl,ans;

map <int,int> M;

int main()
{
    fin>>n>>l>>u;
    for(int i=1;i<=n;i++)
        fin>>v[i];
    for(int i=1;i<=n;i++)
    {
        nrl=0;
        for(int j=i;j<=n;j++)
        {
            if(!M[v[j]])
                nrl++;
            M[v[j]]++;
            if(nrl>=l && nrl<=u)
            {
                ans++;
                fout<<i<<" "<<j<<'\n';
            }
            else if(nrl>u)
                break;
        }
        for(int j=i;j<=n;j++)
            M[v[j]]=0;
    }
    fout<<ans;
}