⚡문제정보
살짝 막혔었던 문제였는데 오늘 다시보니까 풀렸어요
평균점수를 구하고 -> 등수를 구해야하는 문제인데
동점인 경우의 처리에 유의해줘야합니다.
🔍접근방법
각 요소를 평균값으로 변환해주고 비교해야한다.
등수를 매기기 위한 정답 배열을 만들어주어야한다.
순위를 정해주기 위해 [i]를 기준으로 나머지 요소들과의 대소관계를 카운트해준다.
한계
for문을 2중으로 사용함..
🔍나의 풀이
function solution(score) {
let answer = Array.from(score, () => 1)
for(i=0 ; i<score.length ; i++) {
let standard = (score[i][0] + score[i][1]) / 2
for(j=0; j<score.length ; j++) {
let compare = (score[j][0] + score[j][1]) / 2
if(compare > standard) answer[i]++
}
}
return answer
}
코드설명은 아래에 서술합니다.
function solution(score) {
let answer = Array.from(score, () => 1)
//score의 길이와 같은 배열을 만들고 값을 1로 채워줍니다.
for(i=0 ; i<score.length ; i++) {
let standard = (score[i][0] + score[i][1]) / 2
// 기준점의 평균값을 구합니다.
for(j=0; j<score.length ; j++) {
let compare = (score[j][0] + score[j][1]) / 2
// 비교하고자하는 값의 평균을 구합니다.
if(compare > standard) answer[i]++
//만약 비교값이 기준값보다 크다면 등수를 올려줍니다.
}
}
return answer
}
반응형
'programmers' 카테고리의 다른 글
[Programmers Level 1] 푸드파이트 대회 Javascript (0) | 2022.12.14 |
---|---|
[Programmers Level 1] 명예의 전당 Javascript (0) | 2022.12.14 |
[Programmers Level 0] 분수의 덧셈 Javascript (0) | 2022.12.13 |
[Programmers Level 1] 두개 뽑아서 더하기 Javascript (0) | 2022.12.13 |
[Programmers Level 1] 소수찾기 Javascript (0) | 2022.12.12 |