주어진 정수 num에 대해 결과가 한 자릿수만 남을 때까지 반복해서 모든 자릿수를 더하고 그 값을 반환하는 문제이다.
아래처럼 간단히 재귀로 풀었다.
var addDigits = function(num) {
const numArray = num.toString().split("").map(str => Number(str));
if(numArray.length === 1){
return numArray[0]
}else{
return addDigits(numArray.reduce((acc, cur) => acc + cur))
}
};
다른 사람들 풀이를 보니 아래처럼 기발하게 푸는 방법도 있었다.
var addDigits = function(num) {
return 1 + (num - 1) % 9;
};
'Algorithm' 카테고리의 다른 글
[PCCP 기출문제] 2번 석유시추(lv2, js) (0) | 2023.12.28 |
---|---|
[leetcode]242. Valid Anagram(feat. JS) (1) | 2023.11.02 |
[leetcode] 125. Valid Palindrome (feat. JS) (0) | 2023.11.01 |
124 나라의 숫자 (0) | 2022.04.08 |
완전탐색 - 양과 늑대(2022 KAKAO BLIND RECRUITMENT) (0) | 2022.04.08 |