#include<iostream>
#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
bool cmp(pair<int,double>a,pair<int,double>b) {
return a>b;
}
int main() {
pair<int,double> p;
int k1,k2,i,j;
vector< pair<int,double> >L1;
vector< pair<int,double> >L2;
vector< pair<int,double> >L3;
cin>>k1;
for(i=0; i<k1; i++) {
cin>>p.first>>p.second;
L1.push_back(p);
}
cin>>k2;
for(i=0; i<k2; i++) {
cin>>p.first>>p.second;
L2.push_back(p);
}
for(i=0; i<k1; i++)
for(j=0; j<k2; j++) {
p.first=L1[i].first+L2[j].first;
p.second=L1[i].second*L2[j].second;
L3.push_back(p);
}
sort(L3.begin(),L3.end(),cmp);
int ernum1=0;
for(i=0; i<k1*k2-1-ernum1; i++) {
if(L3[i].first==L3[i+1].first) {
L3[i].second+=L3[i+1].second;
L3.erase(L3.begin()+i+1);
ernum1++;
i--;
}
}
int ernum2=0;
for(i=0; i<k1*k2-ernum1-ernum2; i++) {
if(L3[i].second==0) {
L3.erase(L3.begin()+i);
i=i-1;
ernum2++;
}
}
cout<<L3.size();
for(i=0; i<L3.size(); i++) {
printf(" %d %.1f",L3[i].first,L3[i].second);
}
return 0;
}
PAT甲级1009
猜你喜欢
转载自blog.csdn.net/qq_43654994/article/details/105318362
今日推荐
周排行