#include #include #include #include #include using namespace std; typedef set fnset; main() { map lnames; map ::iterator lnit; fnset fnames, fnames_empty; fnset::iterator fnit; int i; string fn, ln, name; while (!cin.eof()) { cin >> fn; if (!cin.fail()) { cin >> ln; lnit = lnames.find(ln); if (lnit == lnames.end()) { lnames.insert(make_pair(ln, fnames_empty)); lnit = lnames.find(ln); } lnit->second.insert(fn); } } for (lnit = lnames.begin(); lnit != lnames.end(); lnit++) { fnames = lnit->second; for (fnit = fnames.begin(); fnit != fnames.end(); fnit++) { cout << *fnit << " " << lnit->first << endl; } } }