Cod sursa(job #3259969)

Utilizator filip.ripaRipa Filip filip.ripa Data 28 noiembrie 2024 16:48:20
Problema Secventa 5 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <unordered_map>

using namespace std;

ifstream cin("secv5.in");
ofstream cout("secv5.out");

int v[10001];

int cnt(long long n,long long nr)
{
    unordered_map<long long,int>vf;
    long long r=1,l=1,ans=0,dif=0;
    for(r=1;r<=nr;r++)
    {
        vf[v[r]]++;
        if(vf[v[r]]==1)
            dif++;
        while(dif>n)
        {
            vf[v[l]]--;
            if(vf[v[l]]==0)
                dif--;
            l++;
        }
        ans+=r-l;
    }
    return ans;
}

int main()
{
    long long n,m,t;
    cin>>t>>n>>m;
    for(int i=1;i<=t;i++)
        cin>>v[i];
    cout<<cnt(m,t)-cnt(n-1,t);
    return 0;
}