#include <iostream>
#include <algorithm>
using namespace std;
int arr1[1000];
int arr2[1000];
int main(void)
{
int a=0;
cin>>a;
for(int i=0; i<a; i++)
{
cin>>arr1[i];
}
for(int i=0; i<a; i++)
{
cin>>arr2[i];
}
sort(arr1,arr1+a);
sort(arr2,arr2+a);
int sum=0;
for(int i=0; i<a; i++)
{
sum=sum+arr1[i]*arr2[a-1-i];
}
cout<<sum;
return 0;
}
조금만 생각하면 간단하게 풀 수 있는 문제이다. 가장 큰값과 가장 작은 값을 곱하자!!
'백준 > 그리디' 카테고리의 다른 글
[백준] C++ 12904번(A와 B) (0) | 2024.07.02 |
---|---|
[백준] C++ 1744(수 묶기) (0) | 2024.06.29 |
[백준]C++ 11000(강의실 배정) (0) | 2024.06.29 |
[백준] C++ 1715(카드 정렬하기) (0) | 2024.06.28 |
C++ 2217번(로프) (0) | 2024.06.26 |