개인활동/코테

[프로그래머스] 짝수와 홀수

려우 2024. 6. 1. 09:21
반응형

def solution(num):
    return "Even" if num % 2 == 0 else "Odd"

 

여기서 나머지가 아닌 다른 방법이 있을까 고민해보았는데, 다른사람의 코드 중 엄청난 사실을 확인하였다.

def evenOrOdd(num):
    return ["Even", "Odd"][num & 1]

 

와..... 어떻게 이럴수가...........

여기서는 입력받은 num과 1로 비트연산을 수행한다.

 

예를 들어 입력받은 수가 3이라고 한다면 이는 이진수로 011이다.

1은 001이기에 이 둘을 and 연산을 하면

 

011

001

-------

001

이 최종적인 결과로 나오게 된다.

 

럴수럴수 이럴수가. 재미있는 풀이였다.

반응형