[프로그래머스 | Lv. 1 | JavaScript] 내적
·
알고리즘/문제
Link코딩테스트 연습 - 내적 문제풀이(1)function solution(a, b) { return a.map((m, i) => m * b[i]).reduce((acc, val) => acc + val);}(2)function solution(a, b) { return a.reduce((acc, _, i) => acc += a[i] * b[i], 0);}
[프로그래머스 | Lv. 1 | JavaScript] 핸드폰 번호 가리기
·
알고리즘/문제
Link코딩테스트 연습 - 핸드폰 번호 가리기 문제풀이(1)function solution(phone_number) { let len = phone_number.length; return phone_number.split('').map((curr, idx) => idx (2)function solution(phone_number){ return s.replace(/\d(?=\d{4})/g, "*");}(3)function solution(s){ let result = "*".repeat(s.length - 4) + s.slice(-4); return result;}(4)const solution = n => [...n].fill("*",0,n.length-4).join("")
[프로그래머스 | Lv.1 | JavaScript] 제일 작은 수 제거하기
·
알고리즘/문제
Link코딩테스트 연습 - 제일 작은 수 제거하기 문제풀이(1)function solution(arr) { if (arr.length === 1) return [-1]; let answer = []; let min = Number.MAX_SAFE_INTEGER; let idx = 0; for (let i = 0; i (2)function solution(arr) { if (arr.length === 1) return [-1]; let min = Math.min(...arr); return arr.filter(num => num !== min);}
[프로그래머스 | Lv. 1 | JavaScript] 음양 더하기
·
알고리즘/문제
Link코딩테스트 연습 - 음양 더하기 문제풀이(1)function solution(absolutes, signs) { let answer = 0; let len = absolutes.length; for (let i = 0; i (2)function solution(absolutes, signs) { let answer = 0; absolutes.forEach((val, i) => answer += signs[i] ? val : -val); return answer;}(3)function solution(absolutes, signs) { return absolutes.reduce((acc, val, i) => acc + (signs[i] ? ..
[프로그래머스 | Lv. 1 | JavaScript] 나누어 떨어지는 숫자 배열
·
알고리즘/문제
Link코딩테스트 연습 - 나누어 떨어지는 숫자 배열 문제풀이(1)function solution(arr, divisor) { let answer = []; for (let a of arr) { if (a % divisor === 0) answer.push(a); } answer.sort((a, b) => a - b); if (answer.length === 0) answer.push(-1); return answer;}(2)function solution(arr, divisor) { let answer = arr.filter(item => item % divisor === 0).sort((a, b) => a - b); if (..
[프로그래머스 | Lv. 1 | JavaScript] 하샤드 수
·
알고리즘/문제
Link코딩테스트 연습 - 하샤드 수 문제풀이(1)function solution(x) { let sum = String(x).split('').reduce((acc, curr) => acc + Number(curr), 0); return x % sum === 0;}(2)function solution(x) { return !(x % String(x).split('').reduce((acc, curr) => acc + Number(curr), 0));}
[프로그래머스 | Lv. 1 | JavaScript] 정수 제곱근 판별
·
알고리즘/문제
Link코딩테스트 연습 - 정수 제곱근 판별 문제풀이(1)function solution(n) { let sqrt = Math.sqrt(n); return (sqrt % 1 === 0) ? (sqrt + 1) ** 2 : -1;}(2)function solution(n) { let sqrt = Math.sqrt(n); return Number.isInteger(sqrt) ? (sqrt + 1) ** 2 : -1;}
[프로그래머스 | Lv. 1 | JavaScript] 정수 내림차순으로 배치하기
·
알고리즘/문제
Link코딩테스트 연습 - 정수 내림차순으로 배치하기 문제풀이(1)function solution(n) { let answer = String(n).split('').sort((a, b) => b - a).join(''); return Number(answer);}(2)function solution(n) { return +String(n).split('').sort().reverse().join('');}
[프로그래머스 | Lv. 1 | JavaScript] 자연수 뒤집어 배열로 만들기
·
알고리즘/문제
Link코딩테스트 연습 - 자연수 뒤집어 배열로 만들기 문제풀이(1)function solution(n) { //return String(n).split('').map(m => Number(m)).reverse(); return String(n).split('').map(Number).reverse();}
[프로그래머스 | Lv. 1 | JavaScript] 문자열 내 p와 y의 개수
·
알고리즘/문제
Link코딩테스트 연습 - 문자열 내 p와 y의 개수 문제풀이(1)function solution(s){ let answer = true; let lower = s.toLowerCase(); let pCnt = 0; let yCnt = 0; for (let c of lower) { if (c === 'p') pCnt += 1; else if (c === 'y') yCnt += 1; } return pCnt === yCnt;}(2)function solution(s) { const lower = s.toLowerCase(); return lower.split('p').length === lower.split('y').lengt..