杭电ACM1004
程序员文章站
2022-05-13 17:05:05
...
#include<iostream>
using namespace std;
int main()
{
char ballnoon[1000][15];
int count[1000];
int n,i;
while(cin >> n)
{
if(n==0)
break;
for(i=0;i<n;i++)
cin >> ballnoon[i];
for(i=0;i<n;i++)
{
count[i]=0;
for(int j=i+1;j<n;j++)
{
//strcmp相等返回0
if(!strcmp(ballnoon[i],ballnoon[j]))
count[i]++;
}
}
int max=count[0],idx=0;
for(i=1;i<n;i++)
{
if(count[i]>max)
idx=i;
}
cout << ballnoon[idx] << endl;
}
}
此题比较简单,就是练习下输入输出,以及对循环的使用,但是就是如此简单的题,最开始也做错了。第二重循环j的初始值应该是i+1,因为是从前往后扫描,而不是从0开始。