728x90

Dev/Algorithm 14

[코딩테스트] 직각삼각형 출력하기

하다가 정말 어려웠던 것만 블로그에 글을 남길 생각이었는데 벌써 세개째 쓰고 있다. 이건 로직 자체가 어려운건 아닌데 기본 코드 세팅이 롸..? 하게 만드는 상태라 기록해두려고 한다. 문제 : 직각삼각형 출력하기 문제 설명 "*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요. 제한사항 1 ≤ n ≤ 10 const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); let input = []; rl.on('l..

Dev/Algorithm 2023.04.14

[코딩테스트] 최빈값 구하기

이 문제 상당히 난감했다. 해답을 보고도 아하! 라며 바로 이해하기 보단 한줄한줄 따라가며 읽어야지만 눈에 들어와서 따로 디테일한 공부 없이 뇌빼고 코딩했던 나같은 사람들한테는 진입장벽이 조금 높을 수도 있겠다는 생각이 들었다. 문제 : 최빈값 구하기 문제 설명 최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다. 제한사항 0 { m.set(item, (m.get(item) || 0) + 1); }) m = [...m].sort((a,b) => b[1] - a[1]); return m.length === 1 || m[0][1] > m[1..

Dev/Algorithm 2023.04.14

[코딩테스트] 분수의 덧셈

분수의 덧셈 문제를 풀고 있었는데, 대충 플로우 까진 생각해냈는데 도저히 최대공약수를 찾을 방법을 알지 못했다. 그래서 찾은 답안이 이건데 이게 가장 기초적인 최대공약수를 구하는 로직이다. function solution(denum1, num1, denum2, num2) { let topNum = denum1 * num2 + denum2 * num1 let bottomNum = num1 * num2 let gcd = 0 for(let i = 0; i < topNum; i++) { if(topNum%i === 0 && bottomNum%i === 0) { gcd = i } } return [topNum/gcd, bottomNum/gcd] } for문을 안쓴지 오래돼서 오랜만에 for문을 보니 조금 어지러웠..

Dev/Algorithm 2023.04.14

[코딩테스트]등수 매기기

sort((a,b) => b-a) 어찌저찌 가고싶었던 회사의 서류에 합격하면서 부랴부랴 코테를 준비하기 시작했다. 당연히 남들은 한두달씩 열심히 풀어온걸 내가 이틀만에 끝낼리는 없지만 그래도 기왕 찾아온 기회니 최선을 다한다는 마음가짐으로 시작해보도록 하겠다. 막연히 어떻게 준비해야할지를 몰라서 프로그래머스에 올라와있는 문제를 풀어보았다. 언어는 당연히 할줄 아는게 JS 뿐이니 JS 로 선택했고, 제일 첫문제인 등수매기기 부터 풀어보자. 문제 : 등수매기기 영어 점수와 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매기려고 합니다. 영어 점수와 수학 점수를 담은 2차원 정수 배열 score가 주어질 때, 영어 점수와 수학 점수의 평균을 기준으로 매긴 등수를 담은 배열을 return하도록 solutio..

Dev/Algorithm 2023.04.14
728x90