https://www.acmicpc.net/problem/1094
/**
* 입력데이터 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));
}
}
'Algorithm > 백준풀이' 카테고리의 다른 글
[알고리즘 문제풀이] 백준 2667_단지번호붙이기(JAVA) (0) | 2022.01.14 |
---|---|
[알고리즘 문제풀이] 백준 1992 쿼드트리(JAVA) (0) | 2022.01.14 |
[알고리즘 문제풀이] 백준 2064 IP주소 (JAVA) (0) | 2022.01.13 |
[알고리즘 문제풀이] 백준 13701 중복제거(JAVA) (0) | 2022.01.13 |
[알고리즘 문제풀이] 백준 1780 종이의 개수 (JAVA) (0) | 2022.01.12 |
댓글