본문 바로가기
자료구조 & 알고리즘/CodeUp Python 기초 100제

[CodeUp Python 기초 100제] # 46번_정수 1개 입력받아 2배 곱해 출력하기

by ge_ai 2022. 4. 18.

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

입력

정수 한 개가 입력된다.
단, -1073741824 ~ +1073741823
출력

2배 곱한 정수를 출력한다.

 


 

입력 예시

1024
출력 예시

2048

[내 풀이]

a = int(input())
print(a*2)

 

 

 

[모범 답안]

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

 

 

 

 

[추가 설명]

더보기
컴퓨터 내부에는 2진수 형태로 값들이 저장되기 때문에,
2진수 형태로 저장되어 있는 값들을 왼쪽(<<)이나 오른쪽(>>)으로
지정한 비트 수만큼 밀어주면 2배씩 늘어나거나 1/2로 줄어드는데,

왼쪽 비트시프트(<<)가 될 때에는 오른쪽에 0이 주어진 개수만큼 추가되고,
오른쪽 비트시프트(>>)가 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)이나 1(음의 정수인 경우)이 개수만큼 추가되고,
가장 오른쪽에 있는 1비트는 사라진다.

댓글