题解 | #合并表记录#
合并表记录
https://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201
#include <algorithm>
#include <iostream>
#include <unordered_map>
using namespace std;
int main() {
int size;
cin>>size;
unordered_map<int, int> m;
int ind[size];
int val[size];
int outSize=size;
for(int i=0;i<size;i++)
{
cin>>ind[i];
cin>>val[i];
if(m.find(ind[i])!=m.end())
{
m[ind[i]]+=val[i];
outSize--;
}
else
{
m.insert(pair<int,int>(ind[i], val[i]));
}
}
sort(ind,ind+size);
for(int i=0;i<size;i++)
{
if(i==0||ind[i]!=ind[i-1])
{
cout<<ind[i]<<" "<<m[ind[i]]<<endl;
}
}
}
// 64 位输出请用 printf("%lld")

查看9道真题和解析