2020.11.06
출처 : 프로그래머스
📝문제
[2019카카오블라인드테스트] 실패율
✏️해답
function solution(N, stages) {
let answer = [];
/// 남은 사람의 수
let cnt=stages.length;
let cntArr = [];
/// 스테이지에 머물러 있는 사람수
let remain = 0;
let remainArr=[];
/// Map을 이용해서, 1번문제의 평균, 2번의 평균, 값 구하기...
let index=[];
let result=[];
/// 총 스테이지 갯수
for(let i=1;i<=N;i++){
/// 사람의 수만큼
cntArr.push(cnt);
for(let j=0;j<stages.length;j++){
if(stages[j]==i){
remain++;
cnt--;
}
}
remainArr.push(remain);
remain=0;
}
// console.log('remainArr : '+remainArr);
// console.log('cntArr : '+cntArr);
for(let i=0;i<cntArr.length;i++){
if(cntArr[i]==0){
answer.push(0);
index.push(0);
}else{
answer.push(remainArr[i]/cntArr[i]);
index.push(answer[i]);
}
}
answer.sort((a,b)=>b-a);
// console.log('index :'+index);
// console.log('answer : '+answer);
for(let i=0;i<answer.length;i++){
result.push(index.indexOf(answer[i])+1);
index[index.indexOf(answer[i])]=-1;
// console.log(index);
}
// console.log('result : '+result);
return result;
}
회고🧐
너무 변수가 많다보니 헷갈리는 부분이 있었음.
'코딩테스트' 카테고리의 다른 글
[1일1코👨🏻💻] Lv.2 기능개발.js - 프로그래머스 (0) | 2020.11.12 |
---|---|
[1일1코👨🏻💻] Lv.1 [1차]다트게임.js - 프로그래머스 (0) | 2020.11.09 |
[1일1코👨🏻💻] Lv.1 예산.js - 프로그래머스 (0) | 2020.11.04 |
[1일1코👨🏻💻] Lv.1 키패드 누르기.js - 프로그래머스 (0) | 2020.11.02 |
[1일 1코👨🏻💻] Lv.1 직사각형 별찍기.js - 프로그래머스 (0) | 2020.10.28 |
댓글