/**
* https://leetcode.com/problems/happy-number/
* @param {number} n
* @return {boolean}
*/
var isHappy = function(n) {
var memoize = {};
var happy = n;
while (happy !== 1) {
var tmp = happy;
happy = sumOfSquares(happy);
if (memoize[tmp] === undefined) {
memoize[tmp] = happy;
} else {
break;
}
}
if (happy === 1) {
return true;
}
return false;
};
function sumOfSquares(n) {
return n.toString().split("").reduce((num, item) => {
num += Math.pow(Number.parseInt(item), 2);
return num;
}, 0)
}
'알고리즘 > LeetCode' 카테고리의 다른 글
[Leetcode][Javascript][Easy] 118. Pascals Triangle (0) | 2021.07.10 |
---|---|
[Leetcode][Javascript][Medium] 718. Maximum Length of Repeated Subarray (0) | 2021.07.09 |
[Leetcode][Javascript][Easy] 136. Single Number (0) | 2021.07.07 |
[Leetcode][Javascript][Easy] 70. Climbing Stairs (0) | 2021.07.06 |
[Leetcode][Javascript][Easy] 169. Majority Element (0) | 2021.07.06 |
댓글