Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 백준알고리즘
- DVWA
- 운영체제
- JSP
- juice-shop
- C언어
- firewall
- Network
- gosec
- Codeup
- CodeQL
- sqli
- github
- gotify
- LGTM
- MySQL
- SUA
- 알고리즘
- JDBC
- OpenSource
- Python
- ubuntu
- 데이터통신
- virtualbox
- goKart
- github action
- OWASP
- Juice Shop
- 자료구조
- Database
Archives
- Today
- Total
비트(bit)주세요
[코드업] - 6056, [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기 본문
728x90
https://codeup.kr/problem.php?id=6056
[기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기(설명)(py)
python언어기초100제v1.0 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요. - 모든 내용
codeup.kr
이번 문제는 2개의 정수를 입력받고, 서로 True/False가 다를 때만 True를 출력하는 문제입니다.
XOR 연산이라고도 합니다.
서로 달라야 True가 뜨게 하려면 하나는 True, 하나는 False여야하니까 or 연산을 하면 됩니다.
False or True -> True
True or False -> True 이렇게 되는데 예외사항이 있습니다
True or True -> True 라서 단순히 or 연산만 하면 안됩니다.
하나만 False를 만들기 위해서 and와 not을 같이 써줍니다.
서로 같다면 not 연산을 한쪽만 했을 때 결과값은 서로 달라집니다.
그리고 이 상태에서 and 연산을 하면 결과값은 False가 됩니다.
그리고 이번에는 반대쪽만 not 연산을 하고 and 연산을 진행합니다.
그렇게 되면 연산식이 (a and (not b)), ((not a) and b)처럼 크게 2개로 나뉠텐데,
a and (not b) | b = True | b = False |
a = True | False | True |
a = False | False | False |
(not a) and b | b = True | b = False |
a = True | False | False |
a = False | True | False |
a and (not b) or (not a) and b |
b = True | b = False |
a = True | False | True |
a = False | True | False |
이렇게 되면 서로 다를때만 True를 출력할 것입니다.
'문제풀이 > 파이썬 기초 100제' 카테고리의 다른 글
[코드업] - 6058, [기초-논리연산] 둘 다 거짓일 경우만 참 출력하기 (0) | 2021.07.17 |
---|---|
[코드업] - 6057, [기초-논리연산] 참/거짓이 서로 같을 때에만 참 출력하기 (0) | 2021.07.17 |
[코드업] - 6055, [기초-논리연산] 하나라도 참이면 참 출력하기 (0) | 2021.07.17 |
[코드업] - 6054, [기초-논리연산] 둘 다 참일 경우만 참 출력하기 (0) | 2021.07.17 |
[코드업] - 6053, [기초-논리연산] 참 거짓 바꾸기 (0) | 2021.07.17 |