Recent Posts
Notice
No Rules Rules
실패율 (feat. 프로그래머스, 42889번) 본문
728x90
반응형
실패율
https://programmers.co.kr/learn/courses/30/lessons/42889
반응형
// woohyeon.kim
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
inline bool comp(const pair<double, int>& v1, const pair<double, int>& v2)
{
if(v1.first == v2.first)
{
return v1.second < v2.second;
}
return v1.first > v2.first;
}
vector<int> solution(int N, vector<int> stages) {
vector<pair<double, int>> tmpl;
auto person_count = stages.size();
for(auto stage = 1; stage <= N; ++stage)
{
auto stage_fail_person_count = count(stages.begin(), stages.end(), stage);
if(person_count > 0)
tmpl.push_back(make_pair(stage_fail_person_count / static_cast<double>(person_count), stage));
else
tmpl.push_back(make_pair(0.0, stage));
person_count -= stage_fail_person_count;
}
sort(tmpl.begin(), tmpl.end(), comp);
vector<int> answer;
for(const auto& item : tmpl)
answer.push_back(item.second);
return answer;
}
// *&)*@*
실패율을 기준으로 sort를 취하면 됩니다.
단, 실패율이 같은 경우는 앞선 stage가 우선되어야 하기 때문에 해당 부분만 생각해주면 됩니다.
728x90
반응형
'생활 > 코테' 카테고리의 다른 글
뱀 (feat. 백준, 3190번) (0) | 2022.07.23 |
---|---|
자물쇠와 열쇠 (feat. 프로그래머스, 60059번) (0) | 2022.07.23 |
짝지어 제거하기 (feat. 프로그래머스, 12973번) (0) | 2022.07.23 |
가장 먼 노드 (feat. 프로그래머스, 49189번) (0) | 2022.07.23 |
폰켓몬 (feat. 프로그래머스, 1845번) (0) | 2022.07.23 |
Comments