프로그래밍 문제 풀이/코드업(파이썬)

코드업[CodeUp] Python 기초 100제 [6046번]

태은코딩 2023. 12. 20. 21:40

6046 : [기초-비트시프트연산] 정수 1개 입력받아 2배 곱해 출력하기(설명)(py)

입력값
정수 한 개가 입력된다.
단, -1073741824 ~ +1073741823
출력값
2배 곱한 정수를 출력한다.

 

입력 예시
1024
출력 예시
2048

 

정답 및 가능한 정답

a=int(input())
print(a<<1)

 

해설

비트 시프트 연산자
<< : 모든 비트를 지정한 수만큼 왼쪽으로 이동. 이동된 비트 자리에는 0으로 채워짐(비트 1번 이동 당 2배)
>> : 모든 비트를 지정된 수만큼 오른쪽으로 이동. 밀려난 오른쪽 비트는 삭제됨. (비트 1번당 1/2배, 나머지는 사라짐)
ex) 13>>2는 3
(0b1101  -> 0b11)
ex) 13<<2는 52
(0b1101 -> 0b110100)

그래서 이 문제에서 2배를 하라고 했으니 비트를 1번 왼쪽으로 이동시키면 된다.
print(a<<1)