Problem K: STL——水果店

来源:互联网 发布:为啥淘宝联盟登不进去 编辑:程序博客网 时间:2024/04/28 00:25

Description

小明经营着一个不大的水果店.现在他想要一份水果销售情况的明细表,这样就可以很容易掌握所有水果的销售情况了.

Input

输入包含多组数据.每组测试数据的第一行是一个整数M(0<M<=100),表示有M次成功的交易.其后有M行数据,每行表示一次交易,由水果名称(长度不超过80)和交易的水果数目(正整数,不超过100)组成.

Output

对于每一组测试数据,请你输出一份排版格式正确(请分析样本输出)的水果销售情况明细表.这份明细表包括所有水果的名称和其销售总数的信息.按照水果名称排序。格式见样例!

 

Sample Input

3
apple   3
sugarcane   1
pineapple  3

Sample Output

apple:3
pineapple:3


#include<iostream>#include<string>#include<map>using namespace std;int main(){    int n;    while(cin>>n){       map<string,int>a;       for(int i=0;i<n;i++){          int flag=1;          string str;int num;          cin>>str>>num;          map<string,int>::iterator it;          for(it=a.begin();it!=a.end();it++){               if(str==it->first){                    it->second+=num;flag=0;break;               }          }          if(flag)               a.insert(make_pair(str,num));          }          map<string,int>::iterator it;          for(it=a.begin();it!=a.end();it++){               cout<<it->first<<":"<<it->second<<endl;          }    }    return 0;}

sugarcane:1

HINT

 用STL的map容易实现

0 0