Cod sursa(job #3270464)

Utilizator cezarica23cezar tambozi cezarica23 Data 23 ianuarie 2025 15:08:02
Problema Secventa 5 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <bits/stdc++.h>

using namespace std;

int v[10000005];

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

int main()
{
    ifstream cin("secv5.in");
    ofstream cout("secv5.out");
    long long n, a, b; cin >> n >> a >> b;
    for (int i = 0; i < n; i ++)
        cin >> v[i];
    cout << okbro(b, n) - okbro (a - 1, n);
    return 0;
}