[BOJ] 백준_1026번_보물_C/C++백준 알고리즘2022. 1. 8. 10:00
목차
문제 출처
https://www.acmicpc.net/problem/1026
문제 설명
코드
//[BOJ] 1026번 보물
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
int* A = new int[n];
int* B = new int[n];
int sum = 0;
for (int i = 0; i < n; i++)
{
cin >> A[i];
}
for (int i = 0; i < n; i++)
{
cin >> B[i];
}
sort(A, A + n, greater<>());
sort(B, B + n);
for (int i = 0; i < n; i++)
{
sum += A[i] * B[i];
}
cout << sum << endl;
return 0;
}
풀이 과정
같은 인덱스의 두 배열요소의 값의 곱의 합이 최소값이 되려면 각각의 두 배열의 인덱스는 내림차순과 오름차순으로 정렬되어야 한다. sort 함수로 각각 A는 내림차순, B는 오름차순을 적용시켜 정렬한 후 곱해 더한 값을 sum에 저장하여 출력한다.
728x90
반응형
LIST
'백준 알고리즘' 카테고리의 다른 글
[BOJ] 백준_2864번_5와 6의 차이_C/C++ (0) | 2022.01.12 |
---|---|
[BOJ] 백준_2217번_로프_C/C++ (0) | 2022.01.10 |
[BOJ] 백준_11726번_2xn 타일_C/C++ (2) | 2021.12.30 |
[BOJ] 백준_23841번_데칼코마니_C/C++ (2) | 2021.12.26 |
[BOJ] 백준_23842번_성냥개비_C/C++ (0) | 2021.12.23 |
@kdj :: Childev'note
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!