250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(프로그래머스 c++)최솟값 만들기 본문
728x90
반응형
벡터를 정렬하여 최솟값을 만드는 문제..!
우선 A와 B 벡터를 오름차순과 내림차순으로 정렬한다.
내림차순으로 정렬할 때에는 desc() 함수를 이용하도록 하였다.
그리고 각각의 자리에 있는 값을 곱하여 answer에 누적시키면 끝..!
추가적으로 sort()를 내림차순으로 만들 때,
sort(B.rbegin(), B.rend())를 사용하여도 된다!
rbegin()과 rend()는 역방향 반복자다..!
#include <iostream>
#include<vector>
#include <algorithm>
using namespace std;
bool desc(int a, int b)
{
return a > b;
}
int solution(vector<int> A, vector<int> B)
{
int answer = 0;
sort(A.begin(), A.end());
sort(B.begin(), B.end(), desc);
for(int i = 0; i < A.size(); i++)
answer += A[i] * B[i];
return answer;
}
728x90
반응형
'프로그래머스 알고리즘 > 2단계' 카테고리의 다른 글
(프로그래머스 c++)숫자의 표현 (0) | 2020.05.22 |
---|---|
(프로그래머스 c++)최댓값과 최솟값 (0) | 2020.05.22 |
(프로그래머스 c++)피보나치 수 (0) | 2020.05.21 |
(프로그래머스 c++)행렬의 곱셈 (0) | 2020.05.20 |
(프로그래머스 c++)JadenCase 문자열 만들기 (0) | 2020.05.20 |