試題編號: | 201312-1 |
試題名稱: | 出現次數最多的數 |
時間限制: | 1.0s |
內存限制: | 256.0MB |
問題描述: |
問題描述
給定n個正整數,找出它們中出現次數最多的數。如果這樣的數有多個,請輸出其中最小的一個。
輸入格式
輸入的第一行只有一個正整數n(1 ≤ n ≤ 1000),表示數字的個數。
輸入的第二行有n個整數s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤ i ≤ n)。相鄰的數用空格分隔。 輸出格式
輸出這n個次數中出現次數最多的數。如果這樣的數有多個,輸出其中最小的一個。
樣例輸入
6
10 1 10 20 30 20 樣例輸出
10
|
int main()
{
int n,i,j,t,b,maxc=0;
scanf("%d",&n);
int a[1005];
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n;i++)
{
int cnt=0;
for(j=0;j<n;j++)
{
if(a[i]==a[j])
cnt++;
}
if(cnt>maxc)
{
maxc=cnt;
t=i;
}
if(cnt==maxc&&maxc>0)
{
b=t;
if(a[i]<a[b])
t=i;
}
}
printf("%d",a[t]);
return 0;
}