求众数问题

#include 
#include 
#define N 100010
int a[N];  //存放数字t出现的次数
int main()
{
    int m,n,i,t,p,ans;
    scanf("%d",&m);
    while(m--)
    {
        ans=0;
        memset(a,0,sizeof(a));
        scanf("%d",&n);
        for(i=0;i<n;i++)
        {
            scanf("%d",&t);
            a[t]++;  //记录每个数字t出现的次数
        }
        for(i=0;i<N;i++)  //从N个数中找众数          {             if(a[i]>ans)
            {
                p=i;
                ans=a[i];
            }
        }
        printf("%d %d\n",p,ans);
    }
    return 0;
}
posted @ 2014-10-14 20:59  NYNU_ACM  阅读(225)  评论(0编辑  收藏  举报