반응형
문제
상근이는 이진수 곱셈에 어려움을 겪는 여자친구를 위한 프로그램을 만들려고 한다.
상근이의 여자친구는 항상 이진수에 17을 곱한다. 즉, 이진수 N이 입력으로 들어오면 17을 곱한 다음 이진수로 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 이진수 N이 주어진다. N은 최대 1000자리인 이진수이며, 0이 들어오는 경우는 없다.
출력
입력으로 주어진 N을 17배한 다음, 이진수로 출력한다.
예제 입력10110111 |
예제 출력110000100111 |
풀이
이진수와 십진수의 변환을 활용한 문제이다.
입력받은 수를 십진수로 변환한 뒤, 17을 곱하고 다시 이진수로 변환하여 출력해야 한다.
입력받은 숫자가 이진수이고 n이라고 할때, int(n, 2) 로 손쉽게 이진수를 십진수로 변환할 수 있다.
그리고 17을 곱한 뒤 bin 함수를 통해 2진수인 문자열로 변환할 수 있다.
다만, 맨 앞에 이진수임을 알리는 0b가 같이 출력되므로 끝에 [2:]를 붙여 인덱스 조절을 하여 생략해주자.
n = int(input(),2)
print(bin(n*17)[2:])
반응형
'알고리즘 연습 > 기초 (입출력 등)' 카테고리의 다른 글
[🥉3 / 백준 5523 / 파이썬] 경기 결과 (0) | 2021.07.31 |
---|---|
[🥉1 / 백준 1252 / 파이썬] 이진수 덧셈 (0) | 2021.07.19 |
[🥉5 / 백준 15727 / 파이썬] 조별과제를 하려는데 조장이 사라졌다 (0) | 2021.07.17 |
[🥉5 / 백준 2338 / 파이썬] 긴자리 계산 (0) | 2021.07.15 |
[🥉1 / 백준 1654 / 파이썬] 아무래도이문제는A번난이도인것같다 (0) | 2021.07.14 |