백준
[1026번] 보물
2744m
2019. 3. 12. 21:11
www.acmicpc.net
/*1026번 보물*/
#include <iostream>
#include <algorithm>
using namespace std;
int A[50], B[50];
int N, result;
bool desc(int a, int b) {
return a > b;
}
int main() {
ios::sync_with_stdio(0), cin.tie(0);
cin >> N;
for (int i = 0; i < N; i++) {
cin >> A[i];
}
for (int i = 0; i < N; i++) {
cin >> B[i];
}
sort(A, A + N);
sort(B, B + N, desc);
for (int i = 0; i < N; i++) {
result += A[i] * B[i];
}
cout << result;
}
두 배열 원소들의 곱을 합했을 때 최소가 되려면
한 배열은 오름차순으로 정렬하고 한 배열은 내림차순으로 정렬을 하면된다.