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;
}
두 배열 원소들의 곱을 합했을 때 최소가 되려면
한 배열은 오름차순으로 정렬하고 한 배열은 내림차순으로 정렬을 하면된다.
'백준' 카테고리의 다른 글
[10867번] 중복 빼고 정렬하기 (0) | 2019.03.13 |
---|---|
[1181번] 단어 정렬 (0) | 2019.03.13 |
[10828번] 스택 (0) | 2019.03.12 |
[10815번] 숫자카드 (0) | 2019.03.11 |
[10989]수 정렬하기 3 (0) | 2019.03.11 |
댓글