有很多个评委,
给选手打分,
分数位于0-10000,
如果某个分数的个数大于评委人数的一半,
就把这个分数作为选手得分输出
那没有超过一半呢???题目没讲啊
定义一个数组,比如int a[10001] = {0},然后输入分数,比如score,那么给改分数计数加1,即a[score]++。再判断a[score]是否大于专家人数的一半。是则输出该分数,程序结束。
#include <stdio.h>
int main()
{
int n,score,s[10001] = {0};
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&score);
s[score]++;
if(s[score] >= n/2)
{
printf("%d\n",score);
return 0 ;
}
}
int max = 0;
for(int i=1;i<10001;i++)
if(s[max] < s[i])
max = i;
printf("%d\n",max);
}