水题:题意即为求最大的重复次数。用一个map进行哈希就可以.
Problem : 2192 ( MagicBuilding ) Judge Status : Accepted
RunId : 2459265 Language : C++ Author : C038
Code Render Status : Rendered By HDOJ C++ Code Render Version 0.01 Beta
#include <iostream>
#include <map>
#include <string>
#include <cstdio>
using namespace std;
int Testnum;
int n;
int maxnum;
string s;
map<string, int>m;
int num[10000];
void read_data()
{
maxnum=1;
memset(num, 0, sizeof(num));
int index=0;
m.clear();
for (int i=1; i<=n; i++)
{
cin>>s;
if(m.find(s)!=m.end())
{
num[m[s]]++;
if(num[m[s]] > maxnum) maxnum = num[m[s]];
}
else
{
m[s] = index++;
num[m[s]] = 1;
}
}
}
int main()
{
//freopen("c://in.txt","r",stdin);
cin>>Testnum;
while(cin>>n)
{
read_data();
printf("%d\n", maxnum);
}
return 0;
}