/*:
在一个由自然数1-1000中某些数字所组成的数组中,每个数字可能出现零次或者多次;找出出现次数最多的数字。
在一个由自然数1-1000中某些数字所组成的数组中,每个数字可能出现零次或者多次;找出出现次数最多的数字。
输入 一个1-1000的数N; 表示数组长度
接下来输入N个数
输出出现次数最多的数字
*/
#include <stdio.h>
#include <stdlib.h>
void search(int a[], int len)
{
int array[1000] = {0};
int i = 0;
int max = 0;
for(i=0; i<len; i++)
{
int index = a[i] - 1;
array[index]++;
}
for(i=0; i<1000; i++)
{
if( max < array[i] )
{
max = array[i];
}
}
for(i=0; i<1000; i++)
{
if( max == array[i] )
{
printf("%d\n", i+1);
}
}
}
int main()
{
int *p = NULL;
int n;
int i = 0;
scanf("%d\n", &n);
p = (int*)malloc(n*sizeof(int));
for(i = 0; i < n; i++)
{
scanf("%d", &p[i]);
}
search(p, n);
free(p);
return 0;
}