#include <unordered_map>
#include <iostream>
#include <iomanip>
int main()
{
std::unordered_map<int, std::pair<int, int>> m {
{ 1, { 2, 2 } },
{ -3, { 10, -9 } },
{ 8, { 4, 4 } },
};
auto it = m.find(8);
if (it == m.end()) { it =m.emplace(8, std::make_pair(0, 0)).first; }
++it->second.first;
for (auto const & p : m)
std::cout << std::setw(2) << p.first << " => [" << std::setw(2)
<< p.second.first << " :: " << std::setw(2)
<< p.second.second << "]\n";
}
I2luY2x1ZGUgPHVub3JkZXJlZF9tYXA+CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPGlvbWFuaXA+CgppbnQgbWFpbigpCnsKICAgIHN0ZDo6dW5vcmRlcmVkX21hcDxpbnQsIHN0ZDo6cGFpcjxpbnQsIGludD4+IG0gewogICAgICAgIHsgIDEsIHsgIDIsICAyIH0gfSwKICAgICAgICB7IC0zLCB7IDEwLCAtOSB9IH0sCiAgICAgICAgeyAgOCwgeyAgNCwgIDQgfSB9LAogICAgfTsKCiAgICBhdXRvIGl0ID0gbS5maW5kKDgpOwoKICAgIGlmIChpdCA9PSBtLmVuZCgpKSB7IGl0ID1tLmVtcGxhY2UoOCwgc3RkOjptYWtlX3BhaXIoMCwgMCkpLmZpcnN0OyB9CgogICAgKytpdC0+c2Vjb25kLmZpcnN0OwoKICAgIGZvciAoYXV0byBjb25zdCAmIHAgOiBtKQogICAgICAgIHN0ZDo6Y291dCA8PCBzdGQ6OnNldHcoMikgPDwgcC5maXJzdCA8PCAiID0+IFsiIDw8IHN0ZDo6c2V0dygyKQogICAgICAgICAgICAgICAgICA8PCBwLnNlY29uZC5maXJzdCA8PCAiIDo6ICIgPDwgc3RkOjpzZXR3KDIpCiAgICAgICAgICAgICAgICAgIDw8IHAuc2Vjb25kLnNlY29uZCA8PCAiXVxuIjsKfQo=