GitHubSeob
C++ / 프로그래머스 / 과일 장수 본문
문제
https://school.programmers.co.kr/learn/courses/30/lessons/135808
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제풀이
과일을 포장할때 모자르게 포장할 수 는 없다.
그리고 제한사항을 보면 최대 가격인 k는 score[idx]보다 항상 크므로 k는 무시해도 된다.
먼저 내림차순으로 sort을 이용해 정렬을 한다.
m개 만큼 담아야하므로 idx를 m-1로 두고, score 크기 보다 작으면 answer에 score[idx] * m 값을 더한다.
코드
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int solution(int k, int m, vector<int> score) {
int answer(0), idx(0);
sort(score.begin(), score.end(), greater<>());
for (idx = m - 1; idx < score.size(); idx += m) {
answer += (score[idx] * m);
}
return answer;
}
'Programmers > Level 1' 카테고리의 다른 글
C++ / 프로그래머스 / 추억 점수 (0) | 2023.06.24 |
---|---|
C++ / 프로그래머스 / 명예의 전당 (1) (0) | 2023.06.24 |
C++ / 프로그래머스 / 카드 뭉치 (0) | 2023.06.24 |
C++ / 프로그래머스 / 덧칠하기 (0) | 2023.06.24 |
C++ / 프로그래머스 / 기사단원의 무기 (0) | 2023.06.24 |