【思路】:一个升序,一个降序,相乘。
【AC代码】:
#include <iostream>
#include <algorithm>
#include <vector>
#include <cstdio>
#include <cstring>
using namespace std;
#define MAX 8+1
int cmp_a(const void *a, const void *b)
{
return *(int*)a - *(int*)b;
}
int cmp_b(const void *a, const void *b)
{
return *(int*)b - *(int*)a;
}
int main()
{
//freopen("in.txt", "r", stdin);
int T = 0;
cin >> T;
while (T--)
{
int sum = 0, n = 0, i = 0;
int a[MAX], b[MAX];
cin >> n;
for (i = 0; i < n; i++)
cin >> a[i];
for (i = 0; i < n; i++)
cin >> b[i];
qsort(a, n, sizeof(int), cmp_a);
qsort(b, n, sizeof(int), cmp_b);
for (i = 0; i < n; i++)
{
sum += a[i]*b[i];
}
cout << sum << endl;
}
}