HDU-1004(C语言描述)

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

本题引用 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;
} 


 

posted @ 2018-04-14 22:49  laugh12321  阅读(45)  评论(0编辑  收藏  举报