问题描述
"5题,5题,5题……"ACM俱乐部的管理员对着那份ac表发呆。
怎么那么多会员都AC了5题呢?恐怕不止一半了吧?
现在已知会员人数和每名会员AC的题数,不知道是不是有超过一半的会员AC题数相同呢?
输入
输入有多组数据。每组数据两行。第一行包含一个正整数n(小于等于10000),代表会员人数。第二行包含n个正整数(小于等于10000),代表各会员AC的题数。
输出
对应每组数据,如果超过一半的会员AC的题数相同,则输出这个题数,否则输出0。
输入例子 1
7\n14 36 14 14 14 3 8\n10\n56 56 56 56 3 35 35 8 77 56\n
输出例子 1
14\n0\n
#include<stdio.h>
int main()
{
int n,sum,flag,a[10000];
while(~scanf("%d",&n))
{
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
flag=0;
for(int i=0;i<=n/2;i++)
{
sum=0;
for(int j=i+1;j<n;j++)
{
if(a[i]==a[j])
sum++;
}
if(++sum>n/2.0)
{
printf("%d\n",a[i]);
flag=1;
break;
}
}
if(flag==0)
printf("0\n");
}
return 0;
}