본문 바로가기
코딩테스트/코드업

코드업 기본 100제 | 1059~1062 : 기초-비트단위논리연산 / 1063~1064: 기초-삼항연산 (Python / 파이썬)

by 함께 공부해요 2020. 9. 9.


비트 연산자: 비트별(0, 1)로 연산해 결과를 얻는 연산자

연산자

의미

비고

&

and

모든 비트가 1일 때만 1

|

or

모든 비트 중 한 비트라도 1이면 1

^

xor

모든 비트가 같으면 0, 하나라도 다르면 1

~

not

각 비트의 부정, 0이면 1, 1이면 0

 

조건 연산자(삼항 연산자): 조건에 따라 서로 다른 수식 수행 / if(?),else(:)

조건 수식 ? 수식1 : 수식2;

→ ‘조건 수식’이 (true, 1)이면 ‘수식1’ 수행, 거짓(false, 0)이면 ‘수식2’ 수행

그러나 Python(파이썬)에서는

'수식1' if '조건 수식' else '수식2'

→ ‘조건 수식’이 (true, 1)이면 ‘수식1’ 수행, 거짓(false, 0)이면 ‘수식2’ 수행


코드업 # 1059 : [기초-비트단위논리연산] 비트로 NOT 하여 출력하기

입력

2

출력

-3

a = int(input())
print(~a)

코드업 # 1060 : [기초-비트단위논리연산] 비트로 AND 하여 출력하기

입력

3 5

출력

1

a, b = map(int, input().split())
print(a & b)

코드업 # 1061 : [기초-비트단위논리연산] 비트로 OR 하여 출력하기

입력

3 5

출력

7

a, b = map(int, input().split())
print(a | b)

코드업 # 1062 : [기초-비트단위논리연산] 비트로 XOR 하여 출력하기

입력

3 5

출력

6

a, b = map(int, input().split())
print(a ^ b)

코드업 # 1063 : [기초-삼항연산] 두 정수 입력받아 큰 수 출력하기

입력

123 456

출력

456

a, b = map(int, input().split())
print(a if a > b else b)

 

a, b = map(int, input().split())
if a > b:
    print(a)
else:
    print(b)

코드업 # 1064 : [기초-삼항연산] 정수 3개 입력받아 가장 작은 수 출력

입력

3 -1 5

출력

-1

a, b, c = map(int, input().split())  # 3, -1, 5
m = a if a < b else b
print(m if m < c else c)  # m에 해당하는 b의 값인 -1이 출력됨

 

 

wook2124/Algorithm

Practice algorithm. Contribute to wook2124/Algorithm development by creating an account on GitHub.

github.com

 

댓글