NOJ[1020] 聊天字数统计

传送门:http://acm.nbut.cn/Problem/view.xhtml?id=1020

map 的小应用, 当然也可以用字典树来存人名。 但是在输出的时候,得用这个 (it->first).c_str() 来输出map存的人名。


代码如下:

#include<stdio.h>
#include<iostream>
#include<string.h>
#include<iterator>
#include<map>
using namespace std;
map<string, int> mp;
char a[50], b[10050];
int main()
{
	char c[20] = "----------";
	mp.clear();
	map<string, int>::iterator it;
	while(~scanf("%s%*c", a))
	{
		if(strcmp(a, c) == 0)
		{
			for(it = mp.begin(); it != mp.end(); it++)
			{
				printf("%s %d\n", (it->first).c_str(), it->second);
			}
			puts(c);
			mp.clear();
		}
		else
		{
			gets(b);
			mp[a] += strlen(b);
		}
	}
	return 0;
}

你可能感兴趣的:(NOJ[1020] 聊天字数统计)