Skip to content

Commit ee3fda3

Browse files
committed
week 3- number of 1 bits
1 parent e1073f9 commit ee3fda3

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
class Solution:
2+
# ์–ด๋–ค ์ˆ˜๋ฅผ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์€ 2๋กœ ๋‚˜๋ˆˆ ํ›„, ๊ทธ ๋‚˜๋จธ์ง€(1 ๋˜๋Š” 0)์„ ๊ฐ€์žฅ ๋†’์€ ์ž๋ฆฌ ์ˆ˜๋ถ€ํ„ฐ ์ˆœ์ฐจ๋กœ ๋‚˜์—ดํ•˜๊ณ 
3+
# ๋ชซ์„ ๊ทธ ๋‹ค์Œ ํšŒ์ฐจ์˜ ํ”ผ์ œ์ˆ˜๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.
4+
# ํ•ด๋‹น ๋ฌธ์ œ๋Š” ๋‚˜์—ดํ•˜์ง€ ์•Š๊ณ  ๋Œ€์ƒ ์ˆ˜๋ฅผ 2๋กœ ๋‚˜๋ˆŒ ๋•Œ ๋งค ํšŒ์ฐจ์˜ ๋‚˜๋จธ์ง€๋ฅผ ๋”ํ•ด์คŒ์œผ๋กœ์จ ํ’€ ์ˆ˜ ์žˆ๋‹ค.
5+
def hammingWeight(self, n: int) -> int:
6+
bits_sum = 0
7+
while n >= 1:
8+
# ๋ชจ๋“ˆ๋กœ ์—ฐ์‚ฐ์œผ๋กœ ๋‚˜๋จธ์ง€ ๊ณ„์‚ฐํ•œ๋‹ค.
9+
remainder = n % 2
10+
11+
# ๋‚˜๋จธ์ง€ ๊ฐ’์„ ๊ฒฐ๊ณผ ๊ฐ’์— ๋”ํ•œ๋‹ค.
12+
bits_sum += remainder
13+
14+
# ๋ชซ์€ ๋‹ค์Œ ํšŒ์ฐจ ํ”ผ์ œ์ˆ˜๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
15+
n = n // 2
16+
17+
return bits_sum

0 commit comments

Comments
ย (0)