https://www.acmicpc.net/problem/1094
1094번: 막대기
지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대
www.acmicpc.net
문제
지민이가 원하는 X cm 길이의 막대기를 만드려고 하는데,
이 때, 64cm 막대기부터 시작해서 막대기를 반 씩 잘라서 만드는 과정을 몇 번 반복하면 되는가 하는 문제입니다.
풀이
64cm를 반 씩 자르면, 나올 수 있는 길이는 1, 2, 4, 8, 16, 32, 64입니다.
결국에는 이진법으로 나타냈을 때 1이 몇개 있는지 묻는 문제입니다.
48 = 0110000(2)
X=int(input())
count = 0
while X!=0:
if X%2==1:
count+=1
X=X//2
print(count)
'알고리즘 공부 > 수학' 카테고리의 다른 글
[백준/수학] 4375번: 1 (0) | 2022.10.02 |
---|---|
[백준/수학] 6588번: 골드바흐의 추측 (0) | 2022.10.02 |
[백준/수학] 11689번: GCD(n,k)=1 (0) | 2022.09.18 |
[백준/기하학] 11758번 CCW (0) | 2022.08.21 |
[백준/수학] 3360번 깡총깡총 (0) | 2022.03.18 |