문제
8진수가 주어졌을 때, 2진수로 변환하는 프로그램을 작성하시오.
입력
첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다.
출력
첫째 줄에 주어진 수를 2진수로 변환하여 출력한다. 수가 0인 경우를 제외하고는 반드시 1로 시작해야 한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#include<stdio.h>
#pragma warning(disable:4996)
#pragma warning(disable:6031)
char input[340000];
char a[8][4] = { "0" ,"1","10","11","100","101","110","111" };
char b[8][4] = { "000" ,"001","010","011","100","101","110","111" };
int main()
{
fgets(input, 340000, stdin);
for (int i = 0; input[i] != '\n'; i++) {
if (i == 0)printf("%s", a[input[i] - '0']);
else printf("%s", b[input[i] - '0']);
}
putchar('\n');
return 0;
}
|
cs |
단순한 구현 문제다. 맨 앞자리 수만 조심하면 된다.
'백준 온라인 저지 (BOJ) 문제풀이' 카테고리의 다른 글
백준 온라인 저지 (BOJ) 17502 클레어와 팰린드롬 (0) | 2020.09.25 |
---|---|
백준 온라인 저지 (BOJ) 5988 홀수일까 짝수일까 (0) | 2020.09.25 |
백준 온라인 저지 (BOJ) 1339 단어수학 (0) | 2020.09.25 |
백준 온라인 저지 (BOJ) 1225 이상한 곱셈 (0) | 2020.09.24 |
백준 온라인 저지 (BOJ) 10823 더하기 2 (0) | 2020.09.24 |