Deff_Dev
[프로그래머스] 명예의 전당 (1) (C++) 본문
문제
풀이
#include <string>
#include <vector>
#include <algorithm>
// https://school.programmers.co.kr/learn/courses/30/lessons/138477
using namespace std;
vector<int> solution(int k, vector<int> score) {
vector<int> answer;
vector<int> hallOfFame; // 명예의 전당
for(int i = 0; i < score.size(); i++){
// 명예의 전당 점수의 갯수가 k 이하 일때, 명예의 전당의 최소 점수가 score[i] 보다 작을 때
if(hallOfFame.size() == k && hallOfFame[0] < score[i]){
hallOfFame[0] = score[i]; // 명예의 전당 점수 교체
}
else if(hallOfFame.size() < k){
hallOfFame.push_back(score[i]); // 명예의 전당 점수 추가
}
// 오름차순 정렬
sort(hallOfFame.begin(), hallOfFame.end());
// 최소 점수 추가
answer.push_back(hallOfFame[0]);
}
return answer;
}
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 과일 장수 (C++) (0) | 2024.03.14 |
---|---|
[프로그래머스] 푸드 파이트 대회 (C++) (0) | 2024.03.13 |
[프로그래머스] 기사단원의 무기 (C++) (0) | 2024.03.11 |
[프로그래머스] 크기가 작은 부분 문자열 (C++) (0) | 2024.03.11 |
[프로그래머스] 카드 뭉치 (C++) (0) | 2024.03.10 |