본문으로 바로가기

막대기의 길이는 2의 배수만 가능하니 막대기의 길이를 이진수로 바꾸어 1의 개수를 헤아리면 된다.

#include <cstdio>

int x, k;

int main() {
  scanf("%d", &x);
  while (x) {
    if (x%2 == 1) k++;
    x /= 2;
  }
  printf("%d\n", k);
  return 0;
}

'Programming > Baekjoon Online Judge' 카테고리의 다른 글

[BOJ] 1149: RGB 거리  (0) 2018.06.11
[BOJ] 1100: 하얀 칸  (0) 2018.06.11
[BOJ] 1094: 막대기  (0) 2018.06.11
[BOJ] 1085: 직사각형에서 탈출  (0) 2018.06.11
[BOJ] 1076: 저항  (0) 2018.06.11
[BOJ] 1075: 나누기  (0) 2018.06.08

댓글을 달아 주세요