您的位置:首页 > 其它

OJ 196 让气球飞

2016-03-18 18:35 239 查看
description

国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛,ACM-ICPC以团队的形式代表各学校参赛,每队由3名队员组成,一个队每做出来一个题该队就会获得该题对应颜色的气球,气球越多就说明该队做的题目越多。当然如果一个颜色的气球越多就说明该气球对应的题也就越简单。现在给你很多很多的颜色的气球,问你那个颜色的气球最多,哈哈,聪明的acmer这题对你肯定很简单吧, just ac it!

input

假设只有6种颜色,green,red,blue,pink,orange,black。输入数据有多组,每组数据开始给出一个整数n代表接下来有n个气球,接下来有n行,每行输入一种颜色,n <= 100,输入以EOF结束。

output

输出个数最多的气球的颜色(题目保证个数最多的气球有且仅有一种颜色)

sample_input

3

green

red

green

5

green

red

blue

red

red

sample_output

green

red

#include <iostream>
#include <algorithm>
#include <stdio.h>
#include <string.h>
using namespace std;

int main()
{
char a[6][10]={"green","red","blue","pink","orange","black"};
char b[100][10];
int num[6];
int i,n,max,k,j;
while (cin>>n)
{
for (i=0;i<6;i++)
{
num[i]=0;//可以写成memset(num,0,sizeof(num))
}
for (i=0;i<n;i++)
{
scanf ("%s",b[i]);//可以从设定为一维数组在循环中反复使用

for (j=0;j<6;j++)
{
if (strcmp(b[i],a[j])==0)
num[j]++;
}
}
max=-1;
for (i=0;i<6;i++)
if (num[i]>max)
{
max=num[i];
k=i;
}
printf ("%s\n",a[k]);

}
return 0;
}


但是这里最最最奇怪的:

max=a[0]不可以!!!!

只能max=-999什么的可以,那么我就记着吧,数组循环求最大值的时候让max=一个负数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: