본문 바로가기
[백준]

[BaekJoon/백준] 1026번 보물

by Hevton 2022. 6. 22.
반응형

 

얼핏 보면, 동적계획법을 써야 할 것만 같고 한데

단순히 생각하면 작은수와 큰수로 매칭시켜주면 된다.

 

이러면 되지 않을까 하고 해봤는데 이러면 됐다.

// 작은수랑 큰수랑 맞춰주면 되는거 아닌가?


#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int N, tmp, R;

int cmp(int a, int b) {
    
    return a > b;
}

int main() {
    
    
    vector<int> v1, v2;
    
    cin >> N;
    
    for(int i = 0; i < N; i++) {
        cin >> tmp;
        
        v1.push_back(tmp);
    }
    
    for(int i = 0; i < N; i++) {
        cin >> tmp;
        
        v2.push_back(tmp);
    }
    
    sort(v2.begin(), v2.end());
    sort(v1.begin(), v1.end(), cmp);
    
    
    for(int i = 0; i < N; i++) {
        
        R += v1[i] * v2[i];
    }
    
    cout << R << "\n";

}
반응형