#include <iostream>
#include <unordered_map>
std::unordered_map<int,int> elements_that_appear_more_than_x_times(int arr[], int k, int size) {
int times = size / k;
std::cout << "more than " << times << " times" << "\n";
std::unordered_map<int, int> freqency_map;
for (int i = 0; i < size; i++) {
freqency_map[arr[i]]++;
}
return freqency_map;
}
int main()
{
int k = 4;
int arr[] = {4, 8, 6, 5, 5, 8, 3, 2, 1, 2, 2, 5, 5, 5, 5, 8, 9, 8, 8};
int size = sizeof(arr) / sizeof(arr[0]);
std::unordered_map freqency_map = elements_that_appear_more_than_x_times(arr, k, size);
for (auto el: freqency_map) {
if (el.second > size / k) {
std::cout << el.first << "\n";
}
}
}
/*
run:
more than 4 times
5
8
*/