1、藏书问题:小明藏书真可谓汗牛充栋,现在有一道难题问:小明到底有多少本不一样的书,每样书的名字是什么,因为有的书名是样的,我们把他视为同样的书。
4
English
Math
Chinese
Chinese
样例输出
3
Chinese 2
English 1
Math 1
#include<iostream>
#include<map>
#include<String>
using namespace std;
int main()
{
int n;
char name[105];
cin>>n;
map<string,int> books;
for(int i=0;i<n;i++){
cin>>name; //输入藏书名
books[name]++; //当输入同一类型的藏书,map中的value值加1
}
cout<<books.size()<<endl; //输出藏书的类型个数
map<string,int>::iterator it; //定义books的正向迭代器
for(it=books.begin();it!=books.end();it++)
{
cout<<it->first<<" "<<it->second<<endl;
}
}