題目:
解題思路:
用map來寫,在一個map裏面再套一個map第一個map的first用來存儲字符串(地點)第二個map的first存儲種類second存儲交易數目,最後將其一次輸出即可
Accept Code:
#include<iostream>
#include<algorithm>
#include<map>
#include<string>
using namespace std;
int main()
{
int n,m,T,i,j,k;
cin>>T;
char s1[90],s2[90];
while(T--)
{
map<string,map<string,int> > mp;
cin>>n;
for(i=1; i<=n; i++)
{
cin>>s1>>s2>>m;
mp[s2][s1]+=m;
}
map<string,map<string,int> >:: iterator it;
map<string,int> :: iterator it2;
for(it=mp.begin(); it!=mp.end(); it++)
{
cout<<(*it).first<<endl;
for(it2=(*it).second.begin(); it2!=(*it).second.end(); it2++)
cout<<" |----"<<(*it2).first<<"("<<(*it2).second<<")"<<endl;
}
if(T>=1)
cout<<endl;
}
return 0;
}