Cod sursa(job #3280007)

Utilizator nistor_dora_valentinaNistor Dora Valentina nistor_dora_valentina Data 25 februarie 2025 10:34:40
Problema Secventa 5 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
#include <map>
using namespace std;
ifstream fin("secv5.in");
ofstream fout("secv5.out");
int n, x, y, i, a[1500005];
long long calcul(int val)
{
    int l=1, cnt=0;
    long long ans=0;
    map <int, int> mp;
    for(int r=1; r<=n; r++)
    {
        mp[a[r]]++;
        if(mp[a[r]]==1)
            cnt++;
        while(cnt>val)
        {
            mp[a[l]]--;
            if(mp[a[l]]==0)
                cnt--;
            l++;
        }
        ans+=r-l+1;
    }
    return ans;
}
signed main()
{
    fin>>n>>x>>y;
    for(i=1; i<=n; i++)
        fin>>a[i];
    fout<<calcul(y)-calcul(x-1);
    return 0;
}