#include <string>
#include <iostream>
#include <vector>
#include <thread>
#include <fstream>
#include <utility>
#include <map>
using namespace std;
int main()
{
std::map<std::string, std::vector<int> > m;
m["AA"] = {1, 2, 3, 1, 2, 1, 2, 3};
m["BB"] = {2, 3, 4, 1, 2, 3, 4, 5, 5 };
m["CC"] = {2, 3, 4, 1, 2, 3, 4, 5};
size_t size = 0;
for (auto item = m.begin(); item != m.end(); ++item)
{
std::cout << item->first << '\t';
if (size < item->second.size())
{
size = item->second.size();
}
}
std::cout << std::endl;
for (size_t i = 0; i< size; i++)
{
for (auto item = m.begin(); item != m.end(); ++item)
{
if (i < item->second.size())
{
std::cout << item->second.at(i) << '\t';
}
}
std::cout << std::endl;
}
return 0;
}
I2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8dGhyZWFkPgojaW5jbHVkZSA8ZnN0cmVhbT4KI2luY2x1ZGUgPHV0aWxpdHk+CiNpbmNsdWRlIDxtYXA+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCgppbnQgbWFpbigpCnsKIAogIHN0ZDo6bWFwPHN0ZDo6c3RyaW5nLCBzdGQ6OnZlY3RvcjxpbnQ+ID4gbTsgIAoKICBtWyJBQSJdID0gezEsIDIsIDMsIDEsIDIsIDEsIDIsIDN9OwogIG1bIkJCIl0gPSB7MiwgMywgNCwgMSwgMiwgMywgNCwgNSwgNSB9OyAgCiAgbVsiQ0MiXSA9IHsyLCAzLCA0LCAxLCAyLCAzLCA0LCA1fTsKICAKICBzaXplX3Qgc2l6ZSA9IDA7CiAgZm9yIChhdXRvIGl0ZW0gPSBtLmJlZ2luKCk7IGl0ZW0gIT0gbS5lbmQoKTsgKytpdGVtKQogIHsKICAgIHN0ZDo6Y291dCA8PCBpdGVtLT5maXJzdCA8PCAnXHQnOwogICAgaWYgKHNpemUgPCBpdGVtLT5zZWNvbmQuc2l6ZSgpKQogICAgewogICAgICBzaXplID0gaXRlbS0+c2Vjb25kLnNpemUoKTsKICAgIH0KICB9CgogIHN0ZDo6Y291dCA8PCBzdGQ6OmVuZGw7CgogIGZvciAoc2l6ZV90IGkgPSAwOyBpPCBzaXplOyBpKyspCiAgewogICAgZm9yIChhdXRvIGl0ZW0gPSBtLmJlZ2luKCk7IGl0ZW0gIT0gbS5lbmQoKTsgKytpdGVtKQogICAgewogICAgICBpZiAoaSA8IGl0ZW0tPnNlY29uZC5zaXplKCkpCiAgICAgIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgaXRlbS0+c2Vjb25kLmF0KGkpIDw8ICdcdCc7CiAgICAgIH0KICAgIH0KICAgIHN0ZDo6Y291dCA8PCBzdGQ6OmVuZGw7CiAgfQogIAogICAgcmV0dXJuIDA7Cn0=