单词统计
时间限制: 1 Sec 内存限制: 128 MB
题目描述:
输入n组单词,统计不同单词出现的个数,并按照字典顺序输出。(n<1000,每个单词长度小于1000)
样例输入
4
aab
aab
aa
bc
样例输出
aa 1
aab 2
bc 1
答案:
简单的map容器的应用,key为string,value是出现次数,且不需要排序(map会自动对key进行排序),之后迭代器遍历输出即可。
#define _CRT_SECURE_NO_WARNINGS
#include<bits/stdc++.h>
#include<map>
using namespace std;
#define N 1000010
#define inf 0x3f3f3f3f
#define ll long long
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
#define ull unsigned long long
#define mod 1000000007
map<string, int>a;
int main() {
int n;
cin >> n;
while (n--) {
string s;
cin >> s;
a[s]++;
}
//迭代器遍历输出
map<string, int>::iterator it;
for (it = a.begin(); it != a.end(); it++) {
cout << it->first << " " << it->second<<"\n";
}
return 0;
}