#include <iostream>
#include <cstring>
using namespace std;
const int TEN = 10;
const int MAX_SIZE = 10000;
int workerHours[MAX_SIZE + 1];
void extractNumbersFromLine(const char *line, int& workerId, int& hours) {
int numbersFound = 0;
for (int j = 0; line[j] != '\0'; ++j) {
if (line[j] >= '0' && line[j] <= '9') {
int number = 0;
while (line[j] >= '0' && line[j] <= '9') {
number = number * TEN + (line[j] - '0');
++j;
}
if (numbersFound == 0) {
workerId = number;
++numbersFound;
} else if (numbersFound == 1) {
hours = number;
++numbersFound;
}
}
}
}
void updateMaxHours(int workerId, int hours, int& maxHours, int& workerWithMaxHours) {
if (workerHours[workerId] > maxHours) {
maxHours = workerHours[workerId];
workerWithMaxHours = workerId;
} else if (workerHours[workerId] == maxHours && workerId < workerWithMaxHours) {
workerWithMaxHours = workerId;
}
}
int main() {
int numberOfLines, maxHours = -1, workerWithMaxHours = -1;
cin >> numberOfLines;
cin.ignore();
for (int i = 0; i < numberOfLines; ++i) {
char line[MAX_SIZE];
cin.getline(line, MAX_SIZE);
int workerId = 0, hours = 0;
extractNumbersFromLine(line, workerId, hours);
workerHours[workerId] += hours;
updateMaxHours(workerId, hours, maxHours, workerWithMaxHours);
}
cout << workerWithMaxHours;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGludCBURU4gPSAxMDsKY29uc3QgaW50IE1BWF9TSVpFID0gMTAwMDA7CmludCB3b3JrZXJIb3Vyc1tNQVhfU0laRSArIDFdOwoKdm9pZCBleHRyYWN0TnVtYmVyc0Zyb21MaW5lKGNvbnN0IGNoYXIgKmxpbmUsIGludCYgd29ya2VySWQsIGludCYgaG91cnMpIHsKICAgIGludCBudW1iZXJzRm91bmQgPSAwOwogICAgZm9yIChpbnQgaiA9IDA7IGxpbmVbal0gIT0gJ1wwJzsgKytqKSB7CiAgICAgICAgaWYgKGxpbmVbal0gPj0gJzAnICYmIGxpbmVbal0gPD0gJzknKSB7CiAgICAgICAgICAgIGludCBudW1iZXIgPSAwOwogICAgICAgICAgICB3aGlsZSAobGluZVtqXSA+PSAnMCcgJiYgbGluZVtqXSA8PSAnOScpIHsKICAgICAgICAgICAgICAgIG51bWJlciA9IG51bWJlciAqIFRFTiArIChsaW5lW2pdIC0gJzAnKTsKICAgICAgICAgICAgICAgICsrajsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAobnVtYmVyc0ZvdW5kID09IDApIHsKICAgICAgICAgICAgICAgIHdvcmtlcklkID0gbnVtYmVyOwogICAgICAgICAgICAgICAgKytudW1iZXJzRm91bmQ7CiAgICAgICAgICAgIH0gZWxzZSBpZiAobnVtYmVyc0ZvdW5kID09IDEpIHsKICAgICAgICAgICAgICAgIGhvdXJzID0gbnVtYmVyOwogICAgICAgICAgICAgICAgKytudW1iZXJzRm91bmQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCnZvaWQgdXBkYXRlTWF4SG91cnMoaW50IHdvcmtlcklkLCBpbnQgaG91cnMsIGludCYgbWF4SG91cnMsIGludCYgd29ya2VyV2l0aE1heEhvdXJzKSB7CiAgICBpZiAod29ya2VySG91cnNbd29ya2VySWRdID4gbWF4SG91cnMpIHsKICAgICAgICBtYXhIb3VycyA9IHdvcmtlckhvdXJzW3dvcmtlcklkXTsKICAgICAgICB3b3JrZXJXaXRoTWF4SG91cnMgPSB3b3JrZXJJZDsKICAgIH0gZWxzZSBpZiAod29ya2VySG91cnNbd29ya2VySWRdID09IG1heEhvdXJzICYmIHdvcmtlcklkIDwgd29ya2VyV2l0aE1heEhvdXJzKSB7CiAgICAgICAgd29ya2VyV2l0aE1heEhvdXJzID0gd29ya2VySWQ7CiAgICB9Cn0KCmludCBtYWluKCkgewogICAgaW50IG51bWJlck9mTGluZXMsIG1heEhvdXJzID0gLTEsIHdvcmtlcldpdGhNYXhIb3VycyA9IC0xOwogICAgY2luID4+IG51bWJlck9mTGluZXM7CiAgICBjaW4uaWdub3JlKCk7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG51bWJlck9mTGluZXM7ICsraSkgewogICAgICAgIGNoYXIgbGluZVtNQVhfU0laRV07CiAgICAgICAgY2luLmdldGxpbmUobGluZSwgTUFYX1NJWkUpOwogICAgICAgIGludCB3b3JrZXJJZCA9IDAsIGhvdXJzID0gMDsKICAgICAgICBleHRyYWN0TnVtYmVyc0Zyb21MaW5lKGxpbmUsIHdvcmtlcklkLCBob3Vycyk7CiAgICAgICAgd29ya2VySG91cnNbd29ya2VySWRdICs9IGhvdXJzOwogICAgICAgIHVwZGF0ZU1heEhvdXJzKHdvcmtlcklkLCBob3VycywgbWF4SG91cnMsIHdvcmtlcldpdGhNYXhIb3Vycyk7CiAgICB9CiAgICBjb3V0IDw8IHdvcmtlcldpdGhNYXhIb3VyczsKICAgIHJldHVybiAwOwp9
NQpNdW5jaXRvcnVsIDEgYSBtdW5jaXQgMTAgb3JlCk11bmNpdG9ydWwgMjMgYSBtdW5jaXQgNSBvcmUKTXVuY2l0b3J1bCAzIGEgbXVuY2l0IDMgb3JlCk11bmNpdG9ydWwgMjMgYSBtdW5jaXQgMTEgb3JlCk11bmNpdG9ydWwgMSBhIG11bmNpdCAyIG9yZQ==
5
Muncitorul 1 a muncit 10 ore
Muncitorul 23 a muncit 5 ore
Muncitorul 3 a muncit 3 ore
Muncitorul 23 a muncit 11 ore
Muncitorul 1 a muncit 2 ore