solution([1,2,3,4,6,7,8,0]) // 14
solution([5,8,4,0,6,7,9]) // 6
function solution(numbers) {
let answer = 0;
for (let i = 1; i <= 9; i++) {
if (!numbers.includes(i)) {
answer += i;
}
}
return answer;
}
// fill reduce includes 매서드 사용 풀이
function solution(numbers) {
const answer = new Array(9)
.fill(1)
.reduce((acc, cur, i) => {
const num = cur + i;
return acc + (
numbers.includes(num) ? 0 : num
);
}, 0);
return answer;
}
solution(3, 5) // 12
solution(3, 3) // 3
solution(5, 3) // 12
function solution(a, b) {
let answer = 0;
// a와 b가 같을 때, a를 출력
if (a === b) {
return a;
}
// 최소값 구하기
// 반복문이 실행될 때, 설정된 초기값 (a와 b 중 더 작은 숫자)
// const start = a < b ? b : a
const start = Math.min(a, b);
// 최대값 구하기
// 반복문이 종료되는 조건을 설정 (a와 b 중 더 큰 숫자)
// const start = a > b ? a : b
const end = Math.max(a, b);
for (let i = start; i <= end; i++) {
answer += i;
}
return answer;
}
function solution(a, b) {
if(a === b) {
return a
}
const start = Math.min(a, b)
const end = Math.max(a, b)
const answer = new Array(end - start)
.fill(1)
.reduce((acc,cur,i) => {
const num = start + cur + i
return acc + num
}, start)
return answer
}
solution(10) // true
solution(12) // true
solution(11) // false
solution(13) // false
function solution(x) {
// 자릿수의 합을 저장하는 변수 answer
let answer = 0;
// 숫자 타입의 x 변수에 담긴 값을 문자열로 변환
x = String(x);
for (let i = 0; i < x.length; i++) {
answer += Number(x[i]);
}
비교식을 리턴 : 나머지 값이 없다면 true, 있다면 false
return x % answer === 0;
}
정수 뒤에는 .을 소수점으로 인식하기 때문에 소괄호( )로 묶어주거나 변수에 저장해서 매서드를 사용해야 한다.
예시
123.toString() // SyntaxError: Invalid or unexpected token
(123).toString() // '123'
let qqq = 123
qqq.toString() // '123'
function solution(x) {
// 자릿수의 합을 저장하는 변수 answer
const answer = x.toString()
.split('')
.reduce((acc, cur) => {
return Number(acc) + Number(cur)
})
return x % answer === 0
}