1037. Magic Coupon
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<queue>
#include<vector>
#include<cmath>
#include<iomanip>
#include<algorithm>
using namespace std;
bool greaterCmp(int a, int b)
{
return a>b;
}
int main()
{
int NC,NP,i,j,x;
vector<int> v1,v2;
cin>>NC;
for(i=0; i<NC; i++)
{
cin>>x;
v1.push_back(x);
}
cin>>NP;
for(i=0; i<NP; i++)
{
cin>>x;
v2.push_back(x);
}
sort(v1.begin(),v1.end(),greaterCmp);
sort(v2.begin(),v2.end(),greaterCmp);
int sum = 0;
i = 0;
while(v1[i]>0 && v2[i]>0)
{
sum += v1[i]*v2[i];
i++;
}
int h1 = v1.size() - 1;
int h2 = v2.size() - 1;
while(h1>=i && h2>=i && v1[h1]<0 && v2[h2]<0)
{
sum += v1[h1]*v2[h2];
h1--;
h2--;
}
cout<<sum<<endl;
return 0;
}
多学习,多总结。

浙公网安备 33010602011771号