给定n为A,B整形数组的长度,将A中所有元素与B中所有元素相乘进行累和(各数组元素不可重复使用),求其最小值
/*给定n为A,B整形数组的长度,将A中所有元素与B中所有元素相乘进行累和(各数组元素不可
* 重复使用),求其最小值
* 示例:
* 5
1 8 -1 4 -2
0 6 1 -4 -1
-49
*/
#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;
bool Compare(int x, int y){
return x > y;
}
int main(){
int n;
scanf("%d", &n);
int arr[n];
int brr[n];
int sum = 0;
for (int i = 0; i < n; ++i){
scanf("%d", &arr[i]);
}
for (int i = 0; i < n; ++i){
scanf("%d", &brr[i]);
}
sort(arr, arr + n);
sort(brr, brr + n, Compare);
for (int i = 0; i < n; ++i){
sum += arr[i] * brr[i];
}
printf("%d", sum);
return 0;
}