Pagini recente » Cod sursa (job #3223021) | Cod sursa (job #925937) | Cod sursa (job #389752) | Cod sursa (job #2401616) | Cod sursa (job #3233341)
#include <iostream>
#include <fstream>
#include <vector>
#include <unordered_map>
#include <unordered_set>
using namespace std;
int countSubsequences(const vector<int>& arr, int L, int U) {
int n = arr.size();
int count = 0;
for (int start = 0; start < n; ++start) {
unordered_set<int> distinct_elements;
for (int end = start; end < n; ++end) {
distinct_elements.insert(arr[end]);
int distinct_count = distinct_elements.size();
if (distinct_count >= L && distinct_count <= U) {
count++;
}
if (distinct_count > U) {
break;
}
}
}
return count;
}
int main() {
ifstream infile("secv5.in");
ofstream outfile("secv5.out");
int N, L, U;
infile >> N >> L >> U;
vector<int> arr(N);
for (int i = 0; i < N; ++i) {
infile >> arr[i];
}
int result = countSubsequences(arr, L, U);
outfile << result << endl;
infile.close();
outfile.close();
return 0;
}