[level 1] 문자열 다루기 기본
·
알고리즘/JavaScript
문제 풀이 코드 function solution(s) { let str; str = s.replace(/[^0-9]/g, ''); return (str === s) && (s.length == 4 || s.length == 6); } 풀이 과정 정규식을 이용하여 풀이 하였다! 정규식과 문자열의 replace 함수를 이용하여 문자열중, 숫자로 이루어진것만 뽑아내어 str에 저장하였고, str 과 s 가 같은지 비교, 길이를 비교하여 return 하였다. 나름 잘 풀었다고 생각하지만 return 할때 너무 길어져서 답답했다 그래서 다른사람의 코드풀이를 봤다. 다른사람의 코드 function alpha_string46(s){ var regex = /^\d{6}$|^\d{4}$/; return regex.tes..
[level 1] 평균 구하기
·
알고리즘/JavaScript
문제 풀이 코드 function solution(arr) { return (arr.reduce((sum,current) => sum + current, 0) / arr.length) } 풀이 과정 간단하게 reduce 함수를 통하여 배열의 모든 요소를 더하고, 배열의 길이로 나누어 평균값을 return 하였다.
[level 1] 자연수 뒤집어 배열로 만들기
·
알고리즘/JavaScript
문제 풀이 코드 function solution(n) { return (n + '').split('').map((num) => num * 1).reverse(); } 풀이 과정 자바스크립트의 배열 및 문자혈의 함수를 이용해 잘 풀어냈다!! n + '' 를 통하여 문자열로 변환하고, split 을 통해 각 요소를 분리하여 배열에 저장하고! map 함수를 통해 String 을 Number형으로 변환하고! reverse 를 통해 모든 요소를 뒤집었다! 아니 잘 풀었다고 생각했다, 대부분 나처럼 풀었겠지? 생각하고 다른 사람의 풀이를 봤다 다른사람의 풀이 function solution(n) { let arr = []; do { arr.push(n%10); n = Math.floor(n/10); } while ..
[level 1] 자릿수 더하기
·
알고리즘/JavaScript
문제 풀이 코드 function solution(n) { let arr = []; n = String(n); for (let i = 0; i sum + Number(current), 0); } 풀이 과정 입력받은 n 은 Number 타입이기 때문에 우선 String 타입으로 강제 형변환을 수행했고, for 문을 돌려 각 인덱스를 배열에 할당했다 그리고 해당 배열에 대해 reduce 함수를 이용하여 각 자리수를 더하는 방식으로 수행했다. 숫자들을 10으로 나누고 나머지구하고 등등.. 하는거보단 효율적으로 구현했지만 아무리 봐도 강제 형변환, for 구문, 문자열을 배열에 저장 ..
[level 1] 행렬의 덧셈
·
알고리즘/JavaScript
문제 풀이 코드 function solution(arr1, arr2) { let row = arr1.length; let column = arr1[0].length; let answer= [[]]; for(let i = 0; i < row; i++) { answer[i] = []; for(let j = 0; j < column; j++) { answer[i].push(arr1[i][j] + arr2[i][j]); } } return answer; } 풀이 과정 2차원 배열을 사용하여 풀면 된다. 배열의 요소를 추가하는 push 함수를 이용하여 구현하였다 역시 너무 코드가 길다고 생각되어 다른 사람의 풀이 코드를 봤다 다른사람의 코드 function solution(arr1, arr2) { return a..