https://school.programmers.co.kr/learn/courses/30/lessons/135808?language=cpp
#include <string>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int solution(int k, int m, vector<int> score) {
int answer = 0;
vector<vector<int>> boxScore;
int repetition = score.size() / m;
sort(score.rbegin(), score.rend());
for (int i = 0; boxScore.size() <= repetition; i += m) {
vector<int> t;
if (i + m > score.size()) break;
for (int j = i; j < i + m; j++) {
t.push_back(score[j]);
}
boxScore.push_back(t);
}
for (int i = 0; i < boxScore.size(); i++) {
answer += m * boxScore[i][boxScore[i].size() - 1];
}
return answer;
}
'콘솔창 & 윈도우창 > 코딩 테스트' 카테고리의 다른 글
프로그래머스 LV.2 - N개의 최소공배수 (1) | 2024.11.07 |
---|---|
프로그래머스 LV.2 다음 큰 숫자 (0) | 2024.11.07 |
프로그래머스 LV.2 기능 개발 (0) | 2024.10.31 |
[백준 실버3] 9095 1, 2, 3 더하기 (0) | 2024.10.28 |
프로그래머스 LV.2 멀리 뛰기 (0) | 2024.10.28 |