풀이
하나는 오름차순, 하나는 내림차순으로 정렬하고 곱해주면 된다!
코드
#include <stdio.h>
#include <algorithm>
int main() {
int n, i, a[101], b[101], c = 0;
scanf("%d", &n);
for (i = 0; i < n; i++) scanf("%d", &a[i]);
for (i = 0; i < n; i++) scanf("%d", &b[i]);
std::sort(a, a + n); std::sort(b, b + n, [](const int &i, const int &j){return i > j;});
for (i = 0; i < n; i++) c += a[i] * b[i];
printf("%d", c);
return 0;
}
아무말
백준, 백준 온라인 저지, BOJ, Baekjoon Online Judge, C, C++, 씨, 씨쁠쁠, JAVA, algorithm, 자바, 알고리즘, 자료구조, 문제, 문제 풀이, 풀이