本题要求统计一个整型序列中出现次数最多的整数及其出现次数。
输入格式:
输入在一行中给出序列中整数个数N(0<N<=1000),以及N个整数。数字间以空格分隔。
输出格式:
在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。
输入样例:10 3 2 -1 5 3 4 3 0 3 2输出样例:
3 4
#include <stdio.h>
#include <stdlib.h>
int cmp(const void *x, const void *y)
{
return *(int *)x - *(int *)y;
}
int main()
{
int arr[1001];
int i, j, N, count = 0, maxCount = 0, value = 0;
scanf("%d", &N);
for (i=0; i<N; i++) {
scanf("%d", &arr[i]);
}
qsort(arr, N, sizeof(int), cmp);
for (i=0; i<N; i++) {
count = 1;
for (j=i+1; j<N && arr[i] == arr[j]; j++) {
count++;
}
if (count > maxCount) {
maxCount = count;
value = arr[i];
}
i = j-1;
}
printf("%d %d", value, maxCount);
return 0;
}