- 题目大意
将每个产地的水果种类和数量按照字典序输出。
- 解题思路
利用一个二维的map容器将它的产地,品种,数目记录即可。(注意第一维以产地为键,水果为值,第二维以水果类型为键,水果数量为值,就可以自动按照字典序排序了。)。
- 代码
#include<iostream> #include<map> #include<string> using namespace std; int main() { int m, n; string nam, adr; int ber; cin >> m; while (m--) { map<string, map<string, int>>fr; cin >> n; while (n--) { cin >> nam >> adr>>ber; fr[adr][nam]+=ber; } map<string,map<string,int>>::iterator i1; map<string, int>::iterator i2; for (i1 = fr.begin(); i1 != fr.end(); i1++) { cout << i1->first<<endl; for (i2 = (i1->second).begin(); i2 != (i1->second).end(); i2++) { cout << " |----" << i2->first << "(" << i2->second << ")" << endl; } } fr.clear(); if(m!=0) cout << endl; } return 0; }