Let the Balloon Rise
输入
输入包含多个测试用例。每个测试用例都以数字 N (0 < N < = 1000) 为起点, 分布的气球总数。下 N 行包含一个颜色。气球的颜色是一个多达15个小写字母的字符串。带有 N = 0 的测试用例终止输入, 并且不处理此测试用例.
输出
对于每种情况, 在单行上打印最流行问题的气球颜色。保证每个测试用例都有一个唯一的解决方案。
示例输入
5
green
red
blue
red
red
3
pink
orange
pink
0
样例输出
red
pink
pink
本题引用 string.h 库,使用 int strcmp(const char *s1, const char *s2)函数。
(比较s1和s2指向的两个字符串。如果完全匹配,则两字符串相同,否则比较首次出现不匹配的字符对。通过字符编码值比较字符。如果两个字符串相同,函数返回0;如果第1个字符串小于第2个字符串,函数返回小于0的值;如果第1个字符串大于第2个字符串,函数返回大于0的值。)
#include<stdio.h>
#include<string.h>
int main(void)
{
int N, i , j, a = 0, b = 0, flag = 0;
char s[1002][16];
while(scanf("%d", &N) != EOF)
{
if (N == 0) break;
flag = 0;
for(i = 0; i < N; i++)
scanf("%s", s[i]);
for(i = 0; i < N; i++)
{
a = 0;
for(j = 0; j < N; j++)
if(strcmp(s[i],s[j])==0)
a++;
if(a > b)
{
b = a;
flag = i;
}
}
printf("%s\n", s[flag]);
}
return 0;
}