Найти количество дубликатов в std::map

167
09 января 2019, 15:10

Как найти количество дубликатов в map?

std::map<int, int> coor;
coor.emplace(0xafedcab8, 428);
coor.emplace(0xafedcc65, 82);
coor.emplace(0xafedccc0, 136);
coor.emplace(0xafedcf47, 82);
coor.emplace(0xafedd185, 136);
coor.emplace(0xafedd26a, 82);

как сделать так?

число 82    3 раза
число 136   2 раза
число 428   1 раза
Answer 1

Ну, простейший способ -

std::map<int, int> multi;
for(auto& p: coor)
    multi[p.second]++;
for(auto& p: multi)
    cout << "Число " << p.first << "   "
        << p.second << " раза.\n";
READ ALSO
список указателей на объекты и удаление из списка

список указателей на объекты и удаление из списка

Как получить доступ к ним по итератору, чтобы можно было удалять объект из коллекции? struct Base { virtual void doit() { cout << "Base!\n"; } virtual...

170
Y=1.QNan. C++ в чем может быть причина?

Y=1.QNan. C++ в чем может быть причина?

Попытался сделать задачу из интернета на If,ElseВ итоге X выводится нормально,а Y с QNan

193
esc последовательность в cout

esc последовательность в cout

Этот код все делает правильно: очищает экран, и вывод с первой строки, первой позиции ячейки:

158
Thread.sleep() работает не так, как надо

Thread.sleep() работает не так, как надо

Пишу пошаговую 2D игру, где персонаж передвигается в строго заданном направлении по клеткам поляИспользую MouseListener

176