[TIL] 정글 133일차

신승준·2022년 8월 8일
0

알고리즘

  • 백준
    • 수학
      • 4344 평균은 넘겠지
const fs = require('fs');
// let input = fs.readFileSync('/dev/stdin').toString();
let input = fs.readFileSync('input.txt').toString();
input = input.split('\n');

const testCaseNumber = Number(input[0]);

for (let i = 1; i <= testCaseNumber; i++) {
    const currentArray = input[i].split(' ');
    const studentsNumber = Number(currentArray[0]);
    const scoreArray = currentArray.map((element) => Number(element)).slice(1);
    
    solution(studentsNumber, scoreArray);
}

function solution(studentsNumber, scoreArray) {
    const average = scoreArray.reduce((sum, currentValue) => {return sum + currentValue}) / studentsNumber;
    const goodStudentsNumber = scoreArray.filter((score) => score > average).length;
    
    const result = (Math.round((goodStudentsNumber / studentsNumber) * 100000) / 1000).toFixed(3);
    console.log(String(result) + '%');
}
  • 위 for문에서 currentArray, 즉 처음 쌩 문자열인 배열을 띄어쓰기 단위로 split하지 않아 제대로 출력값이 나오지 않았다.

하루를 마치고

자바스크립트로 문제를 풀어보려 하는데, 적응이 잘 되지 않는다. 시중의 코딩테스트 대비 책들이 왜 파이썬으로 나와있는지 알 것 같다...! 그래도 map, reduce, filter 등 자바스크립트만의 메서드를 사용해서 풀어보려고 노력 중이다. 언젠가는 적응하겠지!

개발자 이력서 작성은 처음이라 중구난방이다. 예전에 반도체나 공기업 취업을 준비할 때에는 해당 채용 사이트로 들어가 정해진 형식에 맞춰 작성하면 됐었는데 개발자 이력서는 본인이 자문자답 하듯이, 또 자신의 프로젝트를 나름대로 정리하고 자랑해야하니 이 부분이 까다로운 것 같다.

profile
메타몽 닮음 :) email: alohajune22@gmail.com

0개의 댓글