반응형
막대기. 언뜻 간단하게 보이는 문제였지만 어떻게 풀지 고민은 한 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 |