20int main(
int argc,
char* argv[])
24 cout <<
"Usage: ./components <components_file>" << endl;
28 string vname, compname;
29 ifstream inputvert(argv[1]);
30 map<string, int> compcounts;
31 vector< pair<int, string > > countbyname;
33 while(inputvert >> vname)
35 inputvert >> compname;
36 auto it = compcounts.insert(make_pair(compname,1));
42 cout <<
"distinct components " << compcounts.size() << endl;
44 for (
auto it = compcounts.begin(); it != compcounts.end(); ++it)
46 countbyname.push_back(make_pair(it->second, it->first));
48sort(countbyname.begin(), countbyname.end());
49for (
auto it = countbyname.begin(); it != countbyname.end(); ++it)
51 cout << it ->second <<
" " << it->first << endl;