本题比较基础,建立一个足够大的数组,将每一位都初始化为0。每输入一个数,将数组对应位的值加1。最后遍历数组,查找大于N/2的数组元素,输出其索引即可。
#include <iostream>
using namespace std;
const int MAX = 1000010;
int arr[MAX];
int main()
{
int N;
int num;
int special;
while (cin >> N)
{
memset(arr, 0, sizeof(arr));
for (int i = 1; i <= N; i++)
{
cin >> num;
++arr[num];
}
for (special = 1; special <= MAX; special++)
{
if (arr[special] > N / 2)
break;
}
cout << special << endl;
}
return 0;
}
继续加油。