반응형
문제
2진수가 주어졌을 때, 8진수로 변환하는 프로그램을 작성하시오.
입력
첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다.
출력
첫째 줄에 주어진 수를 8진수로 변환하여 출력한다.
예제 입력11001100 |
예제 출력314 |
풀이
2진수를 10진수로 변환한 뒤, 다시 8진수로 출력하는 문제이다.
파이썬에서는 int 로 문자열을 10진수로 변환할 수 있다.
단, 문자열이 10진수가 아닌 다른 n진수로 이루어졌을 경우, 인수에 n을 추가하면 된다.
즉, int(string, n) 을 한다면 n진수로 이루어진 string을 10진수로 변환한다.
그리고 10진수를 8진수로 변환하는 함수는 oct 이다.
oct(10진수) 를 넣는다면 자동으로 8진수 문자열로 변환하는데,
앞에 8진수임을 가르키는 0c 가 붙어있으므로 앞의 두 글자를 떼고 출력하도록 하자.
print(oct(int(input(),2))[2:])
반응형
'알고리즘 연습 > 기초 (입출력 등)' 카테고리의 다른 글
[🥉3 / 백준 2522 / 파이썬] 별 찍기 - 12 (0) | 2021.10.08 |
---|---|
[🥉3 / 백준 2506 / 파이썬] 점수계산 (0) | 2021.10.01 |
[🥉2 / 백준 5597 / 파이썬] 과제 안 내신 분..? (0) | 2021.09.28 |
[🥉4 / 백준 2525 / 파이썬] 오븐 시계 (0) | 2021.09.24 |
[🥉3 / 백준 10409 / 파이썬] 서버 (0) | 2021.08.27 |