题目描述
"5题,5题,5题……"ACM俱乐部的管理员对着那份ac表发呆。
怎么那么多会员都AC了5题呢?恐怕不止一半了吧?
现在已知会员人数和每名会员AC的题数,不知道是不是有超过一半的会员AC题数相同呢?
输入格式
输入有多组数据。
每组数据两行。
第一行包含一个正整数n(小于等于10000),代表会员人数。
第二行包含n个正整数(小于等于10000),代表各会员AC的题数。
输出
对应每组数据,如果超过一半的会员AC的题数相同,则输出这个题数,否则输出0。
样例输入
7
14 36 14 14 14 3 8
10
56 56 56 56 3 35 35 8 77 56
样例输出
14
0
提示[+]
*** 提示已隐藏,点击上方
#include<stdio.h>
int main()
{
int i,j,t,a[10010],n,c;
while(scanf("%d",&n)!=EOF)
{
c=0;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=1;i<n;i++)
for(j=0;j<n-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(i=0;i<n;i++)
if(a[n/2]==a[i])c++;
if(c>n/2)printf("%d\n",a[n/2]);
else printf("0\n");
}
return 0;
}