解题思路:利用STL Map的有序性与唯一性, for循环中输入多组数据,如果数据出现过则 value累加,如果没有出现过即为 一次num2的值。
最后按照要求利用迭代器输出 map中的 key和 value即可。
#include <bits/stdc++.h> using namespace std; int main() { int n, num1, num2; map<int, int> map; cin >> n; for(int i=0; i<n; i++) { cin >> num1 >> num2; map[num1] += num2; } for(auto i=map.begin(); i!=map.end(); i++) { cout << i->first << ' ' << i->second << endl; } return 0; }