Programmers/코딩 기초 트레이닝
[프로그래머스] 간단한 논리 연산
jjam-mo
2024. 2. 19. 11:29
∨이게 or 이고 ∧이게 and이더라..정해진 건가? 아니면 진리표를 보고 아는 것인가?
이 표를 보고 or 인지 and 인지 아는 것 같다.
애초에 or 인지 and 인지도 모르고 ∨, ∧ 기호를 사용했는데 이렇게 하면 안되더라 ㅋㅋㅋㅋㅋ
진리표 대로 일일이 변수를 설정하고 문제를 대입했다....
<내가 쓴 코드>
def solution(x1, x2, x3, x4):
answer = True
True or True == True #여기서 부터~~
True and True == True
True or False == True
True and False == False
False or True == True
False and True == False
False or False == False
False and False == False #여기까지 작성할 필요가 없었다...ㅠㅠ
answer = (x1 or x2) and (x3 or x4)
return answer
이렇게 해야 하는 줄 알았다..그래서 제목은 간단한 논리 연산인데 전혀 간단하지 않아서 의문이였다 ㅋㅋㅋ
그러나 다른 사람의 풀이를 보고는 간단하다는 것을 느꼈다.
내가 진리표에 있는 것을 쓸 필요가 없다는 것을 알았다. 그냥 상식으로 알아야하는 것이었다.
def solution(x1, x2, x3, x4):
return (x1 or x2) and (x3 or x4)
이렇게 간단하게 쓴 사람도 있고
def solution(x1, x2, x3, x4):
return (x1 | x2) & (x3 | x4)
| 와 &를 사용한 사람이 있다. | 가 or 이고, &가 and인 것을 알았다!!!
나중에 이러한 논리 연산이 나오면 꼭 사용해보자!