학생이 자기자신한테 준 점수인지 판별
조건1을 통과한 점수가 최댓값||최솟값인지 판별
조건1,2를 통과한 점수가 유일한 값인지 판별
function solution(scores) {
for(let i=0;i<scores.length;i++){
for(let j=0;j<i;j++){
[scores[i][j],scores[j][i]] = [scores[j][i],scores[i][j]]
}
}
let answer = '';
let totalScore = new Array(scores.length).fill(0);
let cnt = new Array(scores.length).fill(0);
for(let i=0;i<scores.length;i++){
for(let j=0;j<scores[i].length;j++){
let temp = scores[i][j];
if(i === j){
if(Math.max(...scores[i]) === temp || Math.min(...scores[i]) === temp){
if(scores[i].indexOf(temp) === scores[i].lastIndexOf(temp)){
continue;
}
}
}
totalScore[i] += temp;
cnt[i]++;
}
}
totalScore.forEach((v,index) => {
answer += makeCredit(Math.floor(totalScore[index] / cnt[index]))
})
return answer
}
function makeCredit(num){
if(num>=90){
return "A"
}
if(num < 90 && num >= 80){
return "B"
}
if(num < 80 && num >= 70){
return "C"
}
if(num < 70 && num >= 50){
return "D"
}
return "F"
}
참조