Cod sursa(job #3315010)

Utilizator Fishy3Petrus Serban Fishy3 Data 11 octombrie 2025 20:14:19
Problema Secventa 5 Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#include <string>
#include <vector>
#include <unordered_map>
#include <queue>
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
long long v[1000001];
int n;
long long cnt(int l)
{
   unordered_map<long long , int> m;
   int i=0,j=0,nr=0,cnnt=0;
   while(i < n)
   {
       m[v[i]] ++;
       if(m[v[i]] == 1)
        nr ++;
       i ++;
       while(nr > l)
       {
           m[v[j]] --;
           if(m[v[j]] == 0)
            nr --;
           j ++;
       }
       cnnt += i - j;
   }
   return cnnt;
}
int u,l;
long long x;
int main()
{
    fin >> n >> l >> u;
    for(int i=0;i<n;i++)
        fin >> v[i];
    fout << cnt(u) - cnt(l-1);
    return 0;
}