ソースコード
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;
int N;
vector<pair<int, int>> v;
int main () {
scanf("%d", &N);
for (int i = 0; i < N; i++) {
int a, b;
scanf("%d%d", &a, &b);
v.push_back(make_pair(a, b));
}
sort(v.begin(), v.end());
v.push_back(make_pair(0, 0));
int ba = 0, bb = -1;
int aa = 0, ab = -1;
for (int i = 0; i <= N; i++) {
int a = v[i].first, b = v[i].second;
if (ba != a) {
if ((ab == bb && aa > ba) || ab < bb) {
aa = ba;
ab = bb;
}
ba = a; bb = 0;
}
bb += b;
}
printf("%d\n", aa);
}