hdu 1004 Let the Balloon Rise 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1004
字符串判断水
题目大意:有一些五颜六色的气球,找最受欢迎的(出现次数最多的)颜色。
题目分析:用结构体表示出颜色和其对应的出现次数,每次输入都从前向后找一遍,有匹配的就将其次数++,最后通过次数排序。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
struct node
{
char c[20];
int seq;
}a[1005];
int cmp(node a,node b)
{
return a.seq>b.seq?1:0;
}
int main()
{
int n,i,j;
char cc[20];
while(scanf("%d",&n)!=EOF&&n)
{
for(i=0;i<n;i++)
{
scanf("%s",cc);
for(j=0;j<i;j++)
{
if(!strcmp(a[j].c,cc))
{
a[j].seq++;
i--;
n--;
break;
}
}
if(j==i)strcpy(a[i].c,cc);
}
sort(a,a+n,cmp);
printf("%s\n",a[0].c);
}
return 0;
}
PS:其实不用结构体也可以,可能思路要麻烦点。