#include <iostream>
using namespace std;
#include<map>

int main() {
    int num;
    cin >> num;
    map<int,int> m;
    int key;
    int value;
    for(int i = 0 ; i < num ; i ++){
        cin >> key;
        cin >> value;
        m[key] = m[key] + value; 
    }
    for(auto & it : m){
        cout << it.first << " " << it.second << endl;
    }
}
// 64 位输出请用 printf("%lld")

主要是C++ map的使用,对于未存入的key值,map[key]默认为0,这就很方便本题目的书写。