백준
백준 11026 - 보물(C++)
공대생의 잡다한 사전
2022. 4. 28. 02:31
문제 링크입니다. https://www.acmicpc.net/problem/1026
1026번: 보물
첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거
www.acmicpc.net
정렬을 이용해 푸는 문제입니다.
A의 배열은 오름차순으로, B의 배열은 내림차순으로 정렬해 서로 곱해주면 되는 문제입니다.
자세한 것은 코드를 참고해주세요
#define _CRT_SECURE_NO_WARNINGS
#include <cstring>
#include <vector>
#include <iostream>
#include <algorithm>
#include <queue>
#include <cmath>
#include <cstdio>
using namespace std;
int N;
int a[101];
int b[101];
int sum;
bool cmp(int x, int y) {
if (x > y) return true;
else return false;
}
int main()
{
cin.tie(0);
cout.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, cmp);
for (int i = 0; i < N; i++) {
sum += a[i] * b[i];
}
cout << sum;
return 0;
}
질문 및 조언 댓글 남겨주세요