PROBLEM.
https://codeup.kr/problem.php?id=1058
IDEA.
수 자료형 0은 False를 의미하고, 1은 True를 의미한다. 논리연산 시 활용하면 좋다.
SOURCE 1. 논리연산자
a, b = map(int, input().split())
print(int(not a and not b))
# 입력 : 0 1
# 출력 : 0
SOURCE 2. 비트 + 논리연산자
a, b = map(int, input().split())
print(int(not(a|b)))
# 입력 : 0 1
# 출력 : 0
a | b 연산 시 a, b가 둘 다 0일 때만 수 자료형 0이 반환된다는 사실에 착안하여 풀이했다.
LESSON.
- 비트 AND : 양쪽 피연산자에 비트가 있으면 복사된다.
# 0 & 0 = 0
# 0 & 1 = 0
# 1 & 0 = 0
# 1 & 1 = 1
- 비트 OR : 피연산자에 비트가 있으면 복사된다.
# 0 | 0 = 0
# 0 | 1 = 1
# 1 | 0 = 1
# 1 | 1 = 1
(왜 봐도 봐도 헷갈리는지..)
Reference.
End.
'Algorithm' 카테고리의 다른 글
33rd. CodeUp #1060 : [기초-비트단위논리연산] 비트단위로 AND 하여 출력하기 (0) | 2020.12.15 |
---|---|
32nd. CodeUp #1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기 (0) | 2020.12.15 |
30th. CodeUp #1057 : [기초-논리연산] 참/거짓이 서로 같을 때에만 참 출력하기 (0) | 2020.12.14 |
29th. CodeUp #1506 : [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기 (0) | 2020.12.14 |
이것이 코딩테스트다 chapter12 구현 연습문제 (0) | 2020.12.07 |