if (arr.size() < 2) {
return true;
}
unordered_map <int, int> counter;
for(int &elem: arr) {
counter[elem] += 1;
}
vector<int> frequency;
unordered_map<int, int>:: iterator p;
for (p = counter.begin(); p != counter.end(); p++) {
frequency.push_back(p->second);
}
sort(frequency.begin(), frequency.end());
for (int i = 0; i <= frequency.size() - 1; i++) {
if (frequency[i] == frequency[i + 1]) {
return false;
}
}
return true;
}
};
Хэлп
таска с литкода, вывести true если каждый элемент массива встречается уникальное кол-во раз и false если нет
Ловлю heap-buffer overflow
В чем может быть трабл?
i <= frequency.size() - 1 :)
есть огрнаничение по памяти для задачи?
Обсуждают сегодня