본문 바로가기
Algorithm/백준풀이

[알고리즘 문제풀이] 백준 1094 막대기(JAVA)

by 계범 2022. 1. 13.

https://www.acmicpc.net/problem/1094

 

1094번: 막대기

지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대

www.acmicpc.net

/**
 * 입력데이터 2^6
 * 
 * 
 * 비트마스크를 이용한 풀이
 * 
 * 64로 나눠서 나올 수 있는 막대는
 * 64 32 16 8 4 2 1
 * 
 * 결국 비트단위임
 * 
 * 숫자를 비트로 봤을때 저런 막대들의 조합이 됨
 * 
 * bitCount로 쓰인 숫자(막대)개수 체크
 * 출력
 */
import java.util.*;
import java.io.*;

public class BJ1094_막대기 {
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        int x = Integer.parseInt(br.readLine());

        System.out.println(Integer.bitCount(x));
    }
}

댓글