본문 바로가기
BOJ

[C] 백준 1094번 막대기

by 야호호코코 2018. 7. 9.
반응형

 막대기. 언뜻 간단하게 보이는 문제였지만 어떻게 풀지 고민은 한 10분 한 것 같다. 어떻게 풀지보다는 어떻게 예쁘게 코딩하지? 이런 생각만 했다. 


 어쩌면 나는 수학에 더 약한 걸지도 모른다. 이 문제를 배열로 접근해 풀려고했으니. 수학공부좀 해야겠다 



#include <stdio.h>

int main() {

	int X;

	int stick;
	int i;
	
	int sum = 0;

	scanf("%d", &X);

	stick = 0;

	for (i = 64; i > 0; i /= 2) {

		if (i > X) {
			continue;
		}
		else if (i == X) {
			stick = 1;
			break;
		}

		if (sum + i <= X) {
			sum += i;
			stick++;
		}

	}

	printf("%d", stick);
	
	return 0;

}


반응형

'BOJ' 카테고리의 다른 글

[C] 백준 1371번: 가장 많은 글자  (0) 2018.07.15
[C] 백준 2839번 설탕 배달  (0) 2018.07.08
[C] 백준 2941번 크로아티아 알파벳  (0) 2018.07.05