본문 바로가기
프로그래밍/알고리즘

프로그래머스 - 짝수와 홀수 파이썬

by monicada 2022. 12. 19.
728x90

문제 

 

내가 작성한 풀이 

#함수를 만듦 
def solution(num):
    #만약에 num이 2로 나누어 떨어진다면(짝수의 조건)
    if num % 2 == 0:
        #'Even'을 출력 
        return 'Even'
    #0으로 떨어지지 않는다면
    else: 
        #'Odd'를 리턴 
        return 'Odd'

다른 사람들의 풀이 

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

위 풀이는 간단한 숏코드이다 

def evenOrOdd(num):
    if (num%2):
        return "Odd"
    else:
        return "Even"

위 풀이는 참신하다 

두번째 줄을 보면 (num%2) 자체를 조건문안에 넣어서 

값이 있으면 true로 인식하여 'odd'로 되고 

값이 없으면 false로 인식하여 'even' 이 된다 

짝수면 2로 나누어져서 값이 없을 것이고, 홀수면 2로 나누어 떨어지지 않아서 값이 생길 것이기 때문에 성립한다 

완전 신기하다 ㅎㅎ

댓글