认真写处理边界还挺麻烦。直接Hash了。
#include <cstdio>
#define MAXSIZE 100010
using namespace std;
int hash[MAXSIZE];
int main(){
int t,n;
int mostNum;
int buf[110];
scanf("%d",&t);
while (t--){
//initiate
for (int i=0;i<MAXSIZE;i++){
hash[i]=0;
}
//input
scanf("%d",&n);
for (int i=0;i<n;i++){
scanf("%d",&buf[i]);
hash[buf[i]]++;
}
//search
mostNum=0;
for (int i=0;i<MAXSIZE;i++){
if (hash[i]>hash[mostNum]){
mostNum=i;
}
}
//output
printf("%d\n",mostNum);
}
}