Cod sursa(job #3122331)
Utilizator | Barbu Eduard RK13 | Data | 18 aprilie 2023 16:47:56 |
---|---|---|---|
Problema | Secventa 5 | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.66 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("secv5.in");
ofstream g("secv5.out");
long long v[1050000],n;
long long pairs(int k)
{unordered_map<int,int> mp;
long long st=0,dr,sol=0,cnt=0;
for (dr=0;dr<n;dr++)
{
if (mp[v[dr]]==0)
cnt++;
mp[v[dr]]++;
while (cnt>k && st<=dr)
{
mp[v[st]]--;
if (mp[v[st]]==0)
cnt--;
st++;
}
sol+=dr-st+1;
}
return sol;
}
int main()
{long long l,u,x;
f>>n>>l>>u;
for (long long i=0;i<n;i++)
{
f>>v[i];
}
g<<pairs(u)-pairs(l-1);
}