반응형
문제
정수 X가 주어진다. 정수 X는 항상 8진수, 10진수, 16진수 중에 하나이다.
8진수인 경우에는 수의 앞에 0이 주어지고, 16진수인 경우에는 0x가 주어진다.
X를 10진수로 바꿔서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 X가 주어진다. X는 10진수로 바꿨을 때, 1,000,000보다 작거나 같은 자연수이다. 16진수인 경우 알파벳은 소문자로만 이루어져 있다.
출력
첫째 줄에 입력받은 X를 10진수로 바꿔서 출력한다.
예제 입력 110
|
예제 출력 110
|
예제 입력 2010
|
예제 출력 28
|
예제 입력 30x10
|
예제 출력 316
|
예제 입력 40x3f6
|
예제 출력 41014
|
풀이
int 함수를 사용하여 10진수 외의 숫자들을 10진수로 쉽게 변환할 수 있다.
x가 존재하면 16진수, x가 없을 때 맨 앞의 숫자가 0이면 8진수, 나머지는 10진수로 출력하도록 하자.
a = input()
if a[1]=='x':
print(int(a[2:],16))
elif a[0]=='0':
print(int(a[1:],8))
else:
print(a)
반응형
'알고리즘 연습 > 기초 (입출력 등)' 카테고리의 다른 글
[🥉3 / 백준 10178 / 파이썬] 할로윈의 사탕 (0) | 2022.03.29 |
---|---|
[🥉2 / 백준 23303 / 파이썬] 이 문제는 D2 입니다. (0) | 2022.03.26 |
[🥉2 / 백준 4458 / 파이썬] 첫 글자를 대문자로 (0) | 2022.03.16 |
[🥉3 / 백준 4504 / 파이썬] 배수 찾기 (0) | 2022.03.13 |
[🥉4 / 백준 10768 / 파이썬] 특별한 날 (0) | 2022.03.11 |