#include <stdio.h> #include <stdlib.h> typedef struct{ int key; int val; }KeyVal; int cmp(const void*a,const void*b){ return ((*(KeyVal *)a).key-(*(KeyVal *)b).key); } int main(){ int n; scanf("%d",&n); KeyVal keyval[n],tmp; int number=0; while(~scanf("%d %d",&tmp.key,&tmp.val)){ int flag=1; for(int i=0;i<number;i++){ if (keyval[i].key==tmp.key) { keyval[i].val+=tmp.val; flag=0; break; } } if(flag){ keyval[number].key=tmp.key; keyval[number].val=tmp.val; number++; } } qsort(keyval,number,sizeof(KeyVal),cmp); for(int i=0;i<number;i++){ printf("%d %d\n",keyval[i].key,keyval[i].val); } return 0; }