#includeiostream #includestdio.h #includestdlib.h #includemath.h #includestring.h #includealgorithm #includemap #includevector #includequeue using namespace std ; const int max_n = 1111 ; double p [ max_n ] = {}; //double数组p[max_n]表示多
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<map>
#include<vector>
#include<queue>
using namespace std;
const int max_n=1111;
double p[max_n]={};
//double数组p[max_n]表示多项式
//先读入第一个多项式再读入第二个多项式,并把对应系数直接加到第一个多项式上
int main(){
int k,n,count=0;
double a;
scanf("%d",&k);
for(int i=0;i<k;i++){
scanf("%d %lf",&n,&a);
p[n]+=a;
}
scanf("%d",&k);
for(int i=0;i<k;i++){
scanf("%d %lf",&n,&a);
p[n]+=a;
}
for(int i=0;i<max_n;i++){
if(p[i]!=0){
count++;
}
}
printf("%d",count);
for(int i=max_n-1;i>=0;i--){
if(p[i]!=0){
printf(" %d %.1f",i,p[i]);
}
}
system("pause");
return 0;
}