#include<iostream>
using namespace std;
#include<cstdio>
#include<string.h>
int a[100001];
int main(){
memset(a,0,sizeof(a));
int n;
cin>>n;
int temp=n;
int score,code;
int index=0;
int max=0;
while(n--){
scanf("%d%d",&code,&score);
// if(a[code]==-1){
// a[code]+=1;
// }
a[code]+=score;
}
for(int i=1;i<=temp;i++){
//if(a[i]!=-1){
if(a[i]>max){
max=a[i];
index=i;
}
//}
}
printf("%d %d",index,max);
return 0;
}
不知道哪里有问题,可是测试结果显示是有错误的,我用的二维数组,而且和别人直接输出答案的结果进行了比对,没有感觉哪里有问题。