✏️기록하는 즐거움
article thumbnail
[프로그래머스] 평균 구하기 - level 1 (javascript)
Algorithm/Programmers 2022. 6. 30. 23:45

코딩테스트 연습 - 평균 구하기 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr programmers.co.kr | 제출 function solution(arr) { return arr.reduce((a, b) => a + b) / arr.length; } | 풀이과정 reduce() 메서드를 사용해서 배열의 모든 값을 더해준 후, 배열의 길이로 나누어 평균을 구한다. | 개념 Array.prototype.reduce() 배열의 각 요소에 대해 주어진 reducer 함수를 실행한 결과값을 반환한다. 더보기 - 개..

article thumbnail
[프로그래머스] 하샤드 수 - level 1 (javascript)
Algorithm/Programmers 2022. 6. 30. 23:31

코딩테스트 연습 - 하샤드 수 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하 programmers.co.kr | 제출 function solution(x) { let answer = true; let sum = 0; for (let i = 0; i < String(x).length; i++) { sum += Number(String(x)[i]); } answer = x % sum === 0; return answer; } | 풀이과정 숫자인 x를 String으로 형 변환 후 각 자리수를 sum에 더한다. x를 sum으로 나누어 떨어지면 하샤드..

article thumbnail
[프로그래머스] 핸드폰 번호 가리기 - level 1 (javascript)
Algorithm/Programmers 2022. 6. 30. 15:21

코딩테스트 연습 - 핸드폰 번호 가리기 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자 programmers.co.kr | 제출 function solution(phone_number) { return phone_number.replace(/\d(?=\d{4})/g, "*"); } | 풀이과정 replace() 메서드와 정규 표현식을 사용해서 뒤에 4자리를 제외하고 *로 교체한다. console.log("123456".replace(/\d{4}/g, "*")); //*56 \d{4} : 숫자가 4개면 *로 교체한다. console.log("123456".r..

article thumbnail
[프로그래머스] 행렬의 덧셈 - level 1 (javascript)
Algorithm/Programmers 2022. 6. 27. 09:53

코딩테스트 연습 - 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요 programmers.co.kr | 제출 function solution(arr1, arr2) { return arr1.map((item1, index1) => item1.map((item2, index2) => item2 + arr2[index1][index2])); } | 풀이과정 행렬 arr1과 arr2는 같은 행, 같은 열의 값을 더한 것이다. 각 행렬의 요소는 배열로 이루어져 있기 때문에 map을 두 번 사용해서 문제를 풀 수 있다. arr1 안의 한 배..

article thumbnail
[프로그래머스] x만큼 간격이 있는 n개의 숫자 - level 1 (javascript)
Algorithm/Programmers 2022. 6. 27. 09:47

코딩테스트 연습 - x만큼 간격이 있는 n개의 숫자 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. programmers.co.kr | 제출 function solution(x, n) { let answer = []; let number = 0; for(let i=0; i

article thumbnail
[프로그래머스] 직사각형 별찍기 - level1 (javascript)
Algorithm/Programmers 2022. 6. 18. 01:56

코딩테스트 연습 - 직사각형 별찍기 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 조건 n과 m은 각각 1000 이하인 자연수 programmers.co.kr | 제출 process.stdin.setEncoding('utf8'); process.stdin.on('data', data => { const n = data.split(" "); for(let i=0; i < Number(n[1]); i++){ console.log('*'.repeat(Number(n[0]))); } }); | 풀이과정 입력값을 n이라고 했을 때, n[0]은 한 줄에 별의 개수, n[1]은 줄의 개수이다. n[0]..