DESCRIPTION
你有N个苹果以及N个梨子, 第i个苹果的美味度是Ai, 第j个梨子的美味度Bj
在接下来的N天里面, 每天你要吃掉一个苹果和一个梨子, 每天的愉悦度是吃掉的苹果和梨子的美味度的乘积, 显然吃掉的水果不能再吃
你想知道,最好情况下, 接下来这N天的愉悦度的最大值
INPUT
第一行一个整数
N接下来一行
N个整数, 第
i个数表示
Ai接下来一行
N个整数, 第
i个数表示
Bi
OUTPUT
一行一个整数表示答案
SAMPLE INPUT
21 23 4
SAMPLE OUTPUT
11
HINT
1≤N≤500000,1≤Ai,Bi≤1000000
SOLUTION
签到题 排序就可以。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=5000005;
ll a[maxn];
ll b[maxn];
int main()
{
int n;
while(~scanf("%d",&n))
{
for(int i=0; i<n; i++)
{
scanf("%lld",&a[i]);
}
for(int i=0; i<n; i++)
{
scanf("%lld",&b[i]);
}
sort(a,a+n);
sort(b,b+n);
ll ans=0;
for(int i=0; i<n; i++)
{
ans+=a[i]*b[i];
}
printf("%lld\n",ans);
}
return 0;
}