Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 주어진 숫자에서 비트 1의 숫자를 찾는 프로그램

<시간/>

숫자 n이 있다고 가정하고 해당 숫자의 이진 표현에 있는 비트 1의 수를 찾아야 합니다.

따라서 입력이 12와 같으면 출력은 2가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 카운트:=0
  • n이 0이 아닌 동안 do
    • count :=count + (n AND 1)
    • n :=(n / 2)의 바닥
  • 반환 횟수

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시

class Solution:def solve(self, n):count =0 while (n):count +=n &1 n>>=1 return countob =Solution()print(ob.solve(12)) 

입력

12

출력

2