#include <iostream>
#include <map>
using namespace std;
int main ()
{
multimap<char,float> mymultimap;
map<char,float> mymap;
///заполняем multimap
mymultimap.insert( pair<char,float>('a',0.1) );
mymultimap.insert( pair<char,float>('b',0.2) );
mymultimap.insert( pair<char,float>('d',0.4) );
mymultimap.insert( pair<char,float>('e',0.5) );
///заполняем map
mymap.insert( pair<char,float>('f',5.3) );
mymap.insert( pair<char,float>('g',4.32) );
mymap.insert( pair<char,float>('i',23.41) );
mymap.insert( pair<char,float>('r',6.5) );
///вставляем элементы в multimap
mymultimap.emplace('c',0.3);
mymultimap.emplace('b',9.9);
cout << "mymultimap have:" << endl;
for (auto it = mymultimap.begin(); it != mymultimap.end(); ++it)
{
cout << it->first << " : " << it->second << endl;
}
auto lowerMap=mymap.lower_bound('g');/// нижняя граница map
auto upperMap=mymap.upper_bound('i');///верхняя граница map
auto lowerMultimap=mymultimap.lower_bound('b');/// нижняя граница multimap
auto upperMultimap=mymultimap.upper_bound('d');///верхняя граница multimap
mymultimap.erase(lowerMultimap,upperMultimap);
mymap.erase(lowerMap,upperMap);
auto itMultimap = mymultimap.begin();
auto itMap = mymap.begin();
cout << "\nmymultimap have: \t mymap have:" << endl;
for (itMultimap,itMap; itMultimap != mymultimap.end(); ++itMultimap,++itMap)
{
cout << itMultimap->first << " : " << itMultimap->second << "\t\t " << itMap->first << " : " << itMap->second << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgogCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluICgpCnsKICBtdWx0aW1hcDxjaGFyLGZsb2F0PiBteW11bHRpbWFwOwogIG1hcDxjaGFyLGZsb2F0PiBteW1hcDsKIAogIC8vL9C30LDQv9C+0LvQvdGP0LXQvCBtdWx0aW1hcAogIG15bXVsdGltYXAuaW5zZXJ0KCBwYWlyPGNoYXIsZmxvYXQ+KCdhJywwLjEpICk7CiAgbXltdWx0aW1hcC5pbnNlcnQoIHBhaXI8Y2hhcixmbG9hdD4oJ2InLDAuMikgKTsKICBteW11bHRpbWFwLmluc2VydCggcGFpcjxjaGFyLGZsb2F0PignZCcsMC40KSApOwogIG15bXVsdGltYXAuaW5zZXJ0KCBwYWlyPGNoYXIsZmxvYXQ+KCdlJywwLjUpICk7CiAKICAvLy/Qt9Cw0L/QvtC70L3Rj9C10LwgbWFwCiAgbXltYXAuaW5zZXJ0KCBwYWlyPGNoYXIsZmxvYXQ+KCdmJyw1LjMpICk7CiAgbXltYXAuaW5zZXJ0KCBwYWlyPGNoYXIsZmxvYXQ+KCdnJyw0LjMyKSApOwogIG15bWFwLmluc2VydCggcGFpcjxjaGFyLGZsb2F0PignaScsMjMuNDEpICk7CiAgbXltYXAuaW5zZXJ0KCBwYWlyPGNoYXIsZmxvYXQ+KCdyJyw2LjUpICk7CiAKICAvLy/QstGB0YLQsNCy0LvRj9C10Lwg0Y3Qu9C10LzQtdC90YLRiyDQsiBtdWx0aW1hcAogIG15bXVsdGltYXAuZW1wbGFjZSgnYycsMC4zKTsKICBteW11bHRpbWFwLmVtcGxhY2UoJ2InLDkuOSk7CiAgY291dCA8PCAibXltdWx0aW1hcCBoYXZlOiIgPDwgZW5kbDsKICBmb3IgKGF1dG8gaXQgPSBteW11bHRpbWFwLmJlZ2luKCk7IGl0ICE9IG15bXVsdGltYXAuZW5kKCk7ICsraXQpCiAgewogICAgICBjb3V0IDw8IGl0LT5maXJzdCA8PCAiIDogIiA8PCBpdC0+c2Vjb25kIDw8IGVuZGw7CiAgfQogCiAgYXV0byBsb3dlck1hcD1teW1hcC5sb3dlcl9ib3VuZCgnZycpOy8vLyDQvdC40LbQvdGP0Y8g0LPRgNCw0L3QuNGG0LAgbWFwCiAgYXV0byB1cHBlck1hcD1teW1hcC51cHBlcl9ib3VuZCgnaScpOy8vL9Cy0LXRgNGF0L3Rj9GPINCz0YDQsNC90LjRhtCwIG1hcAogIGF1dG8gbG93ZXJNdWx0aW1hcD1teW11bHRpbWFwLmxvd2VyX2JvdW5kKCdiJyk7Ly8vINC90LjQttC90Y/RjyDQs9GA0LDQvdC40YbQsCBtdWx0aW1hcAogIGF1dG8gdXBwZXJNdWx0aW1hcD1teW11bHRpbWFwLnVwcGVyX2JvdW5kKCdkJyk7Ly8v0LLQtdGA0YXQvdGP0Y8g0LPRgNCw0L3QuNGG0LAgbXVsdGltYXAKIAogIG15bXVsdGltYXAuZXJhc2UobG93ZXJNdWx0aW1hcCx1cHBlck11bHRpbWFwKTsKICBteW1hcC5lcmFzZShsb3dlck1hcCx1cHBlck1hcCk7CiAgYXV0byBpdE11bHRpbWFwID0gbXltdWx0aW1hcC5iZWdpbigpOwogIGF1dG8gaXRNYXAgPSBteW1hcC5iZWdpbigpOwogIGNvdXQgPDwgIlxubXltdWx0aW1hcCBoYXZlOiBcdCBteW1hcCBoYXZlOiIgPDwgZW5kbDsKICBmb3IgKGl0TXVsdGltYXAsaXRNYXA7IGl0TXVsdGltYXAgIT0gbXltdWx0aW1hcC5lbmQoKTsgKytpdE11bHRpbWFwLCsraXRNYXApCiAgewogICAgICBjb3V0IDw8IGl0TXVsdGltYXAtPmZpcnN0IDw8ICIgOiAiIDw8IGl0TXVsdGltYXAtPnNlY29uZCA8PCAiXHRcdCAgIiA8PCBpdE1hcC0+Zmlyc3QgIDw8ICIgOiAiIDw8IGl0TWFwLT5zZWNvbmQgPDwgZW5kbDsKICB9CiAgcmV0dXJuIDA7Cn0=