개발자 톡
연습문제 톡
[HSAT 5회 정기 코딩 인증평가 기출] 성적 평가
JS
- 등록일
- 2024-11-11 18:03:45
- 조회수
- 35
- 작성자
- vavoya6324
// 입력처리 const fs = require('fs') const scoresGroup = fs.readFileSync('input.txt', 'utf8') .trim() .split('\n'). slice(1) .map(v => v.split(' ').map((v, i) => [i, +v])) const number = scoresGroup[0].length const totalScores = [] for (let index = 0; index < number; index++) { let sum = 0 scoresGroup.forEach(scores => { sum += scores[index][1] }) totalScores.push([index, sum]) } scoresGroup.push(totalScores) const sortedScoresGroup = scoresGroup.map(scores => scores.sort((a, b) => b[1] - a[1])) const result = [] sortedScoresGroup.forEach(scores => { let prevRank = undefined let prevScore = undefined const rankList = Array.from({length: number}) scores.forEach((index_score, rank) => { const [index, score]= index_score // 이전 값이 존재하고 현재 점수랑 같으면 if (prevScore !== undefined && prevScore === score) { rankList[index] = prevRank } // 이전 값이 없거나, 현재 점수랑 다르면 else { rankList[index] = rank + 1 prevScore = score prevRank = rank + 1 } }) result.push(rankList) }) console.log(result.map(v => v.join(' ')).join('\n'))
#[HSAT_5회_정기_코딩_인증평가_기출]_성적_평가
#js