Endians(ENDIANS) 정답 코드
뿌리튼튼 CS/Algorithm2015. 10. 9. 14:56
난이도 ★☆☆☆☆
힌트
오버플로우(overflow)에 주의할 것. |
이하는 코드입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 |
#include <stdio.h>
#include <math.h>
#pragma warning(disable:4996)
unsigned long convert(const unsigned long num) {
unsigned long first = num / pow(2., 24);
unsigned long second = (num / pow(2., 16)) - (first * pow(2., 8));
unsigned long third = (num / pow(2., 8)) - (second * pow(2., 8)) - (first * pow(2., 16));
unsigned long fourth = num % (unsigned long)pow(2., 8);
return first + second * pow(2., 8) + third * pow(2., 16) + fourth * pow(2., 24);
}
int main() {
int C;
scanf("%d", &C);
while (C-- > 0) {
unsigned long num;
scanf("%lu", &num);
printf("%lu\n", convert(num));
}
return 0;
} |
cs |
'뿌리튼튼 CS > Algorithm' 카테고리의 다른 글
codility - BinaryGap 정답 및 해설 (0) | 2017.06.06 |
---|---|
Conversions(CONVERT) 정답 코드 (0) | 2015.10.09 |
Mispelling(MISPELL) 정답 코드 (0) | 2015.04.10 |
터보모드(TURBOMODE) 정답 코드 (0) | 2015.04.10 |
HOTSUMMER 정답 코드 (0) | 2015.04.10 |