From 95555e7221474c182986f4d4386c1626aa53786d Mon Sep 17 00:00:00 2001 From: robin Date: Wed, 18 Mar 2026 03:59:37 +0900 Subject: [PATCH 1/2] valid-palindrome --- valid-palindrome/nowrobin.js | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 valid-palindrome/nowrobin.js diff --git a/valid-palindrome/nowrobin.js b/valid-palindrome/nowrobin.js new file mode 100644 index 000000000..86049f76c --- /dev/null +++ b/valid-palindrome/nowrobin.js @@ -0,0 +1,23 @@ +/** + * @param {string} s + * @return {boolean} + */ +var isPalindrome = function(s) { + // 1. 소문자로 변환 + 알파벳/숫자만 남기기 + // (공백, 특수문자 제거) + s = s.toLowerCase().replace(/[^a-z0-9]/g, ""); + + const length = s.length; + + // 2. 문자열의 절반만 순회하면서 양쪽 비교 + for (let i = 0; i < length / 2; i++) { + // 왼쪽(i) vs 오른쪽(length - 1 - i) + if (s[i] !== s[length - 1 - i]) { + // 하나라도 다르면 팰린드롬 아님 + return false; + } + } + + // 3. 끝까지 문제 없으면 팰린드롬 + return true; +}; \ No newline at end of file From 7b3401fdd44f6afc1f122b4dd4f63684d44460a8 Mon Sep 17 00:00:00 2001 From: robin Date: Wed, 18 Mar 2026 04:07:40 +0900 Subject: [PATCH 2/2] number of 1 bits solution --- number-of-1-bits/nowrobin.js | 21 +++++++++++++++++++++ valid-palindrome/nowrobin.js | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 number-of-1-bits/nowrobin.js diff --git a/number-of-1-bits/nowrobin.js b/number-of-1-bits/nowrobin.js new file mode 100644 index 000000000..cf33dc9b8 --- /dev/null +++ b/number-of-1-bits/nowrobin.js @@ -0,0 +1,21 @@ +/** + * @param {number} n - 32비트 정수 + * @return {number} - 이진수에서 1의 개수 + */ +var hammingWeight = function(n) { + let setBitCount = 0; // 1의 개수를 저장할 변수 + + // n이 0이 될 때까지 반복 (모든 1비트를 제거할 때까지) + while (n !== 0) { + // 가장 오른쪽에 있는 1비트를 제거 + // 예: 101100 -> 101000 + n &= (n - 1); + + // 1비트 하나 제거했으므로 카운트 증가 + setBitCount++; + } + + // 총 1의 개수 반환 + return setBitCount; +}; + diff --git a/valid-palindrome/nowrobin.js b/valid-palindrome/nowrobin.js index 86049f76c..cc4fdecae 100644 --- a/valid-palindrome/nowrobin.js +++ b/valid-palindrome/nowrobin.js @@ -20,4 +20,4 @@ var isPalindrome = function(s) { // 3. 끝까지 문제 없으면 팰린드롬 return true; -}; \ No newline at end of file +};