목록전체 글 (86)
undefined

문제 설명 문제 풀이 function solution(s) { const arr = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]; let answer = [] let word = "" const splited = s.split("") splited.map((e,i) => { if(!isNaN(e)) { answer.push(e) } else { word += e if(arr.includes(word)) { answer.push(arr.indexOf(word)) word = "" } } }) return +answer.join("") } 1. arr 배열 만들어 준다 (index값 = 요소의값) 2. s를 ..

문제 설명 문제 풀이 function solution(n) { const ternary = n.toString(3) return parseInt(ternary.split("").reverse().join(""),3) } 1. toString으로 3진법화 2. 배열로 나눠주고 reverse 3. join으로 합해준 후 parseInt(num,현재진법)으로 10진법화 개선 사항 function solution(n) { return parseInt([...n.toString(3)].reverse().join(""),3) } es6의 신기능 [...arr]를 잘 활용하면 split으로 따로 배열화를 해줄 필요가 없다.

문제 설명 문제 풀이 function solution(numbers) { const answer = [] for(let i =0; i a-b) } 1. 첫번째 for루프 = target 2. 두번째 for루프 = target에 더해줄 숫자들 => j = 1 + i로 이미 더해준 대상들은 더해주지 않음 3. include 되어있지 않으면 answer 배열에 넣어줌 4. sort 개선 사항 fu..

문제 설명 문제 풀이 function solution(n, m) { const arr = [] for(let i = 1; i 1) { arr.shift() } } arr.push(arr[0]*n/arr[0]*m/arr[0]) return arr } 1. 첫번째 if문은 최대공약수를 찾기 위함 => 둘다 나머지가 0이되는 i를 구한다 2. 두번째 if문은 위의 for루프가 1부터 시작되었다. 최대공약수만 남겨주기위해 1을 shift로 빼줌 3. 마지막은 최소공배수를 구하기 위한 식 개선 사항

문제 설명 문제 풀이 function solution(absolutes, signs) { const array = absolutes.map(function(e,i) { if(!signs[i]) { return Math.abs(e)*-1 } else { return e } }) return array.reduce((p,c) => p+c) } 1. map의 index인자로 signs와 연결 2. signs가 false 일때 Math.abs(e)*-1로 minus화 하여 리턴 3. reduce로 모두의 합 구하기 개선 사항 function solution(absolutes, signs) { return absolutes.reduce((acc, val, i) => acc + (val * (signs[i] ? ..