K
KRYFT Problem Bank
알고리즘 보통 코딩

비트 연산 문제 모음

비트 연산을 활용한 다양한 문제

20분
70점
#3732

문제 설명

비트 연산을 사용하여 다음 함수들을 구현하세요.

구현할 함수

  1. count_bits(n): n의 1인 비트 개수 (popcount)
  2. is_power_of_two(n): 2의 거듭제곱 확인
  3. single_number(arr): 배열에서 하나만 있는 수 찾기
  4. reverse_bits(n): 32비트 정수의 비트 뒤집기
  5. add_without_plus(a, b): + 연산자 없이 덧셈

제약 조건

  • 비트 연산만 사용 (산술 연산 최소화)
  • 0 ≤ n ≤ 2^32 - 1

예시

count_bits(11) → 3  (1011)
is_power_of_two(16) → True
single_number([2,1,2]) → 1
reverse_bits(43261596) → 964176192
add_without_plus(5, 3) → 8
실행 버튼을 눌러 코드를 실행하세요.