본문 바로가기

Algorithm

C++(씨쁠쁠)(cplusplus)-백준(baekjoon)(BaekJoon)코딩 1094번:막대기 답

반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
//num이 16일 때
using namespace std;
int main() {
    int sum = 0, num, stick = 64, glue = 0, save;
    cin >> num;
    save = num;
    while (sum != save)
    {
            while (stick > num)
            {
                stick /= 2;//막대기가 입력받은 수 보다 작을 때까지 나눈다.    
            }
            sum += stick;//그 부분을 더한다.
            
            num -= stick;//입력받은 곳에서 뺀다
            glue++;
            stick = 64//막대기 초기화
    }
    cout << glue << '\n';
}
cs