/*在自己定义的一个结构体中的map的运用和调用*/
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <map>
using namespace std;
struct myst{
map <string, int> mp;//由于输出的原意需要自己定义
};
int main()
{
int t, n;
scanf("%d", &t);
map <string, myst> mp1;
while(t--){
mp1.clear();
scanf("%d", &n);
while(n--){
string f, addr;
int cnt;
cin >> f >> addr;
scanf("%d", &cnt);
mp1[addr].mp[f] += cnt;//这里注意用法
}
for(map <string, myst> :: iterator it = mp1.begin(); it != mp1.end(); it++){
cout << it -> first << endl;
for(map <string, int > :: iterator f = it -> second.mp.begin(); f != it -> second.mp.end(); f++){//这里通过it访问自己定义的结构体
cout << " |----" << f -> first << "(" << f -> second << ")" << endl;
}
}
if(t != 0) cout << endl;
}
return 0;
}
hdu1263(map(自己定义的数据结构的map))
最新推荐文章于 2021-07-25 17:07:39 发布