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로 나누어 떨어지지 않아서 값이 생길 것이기 때문에 성립한다
완전 신기하다 ㅎㅎ
'프로그래밍 > 알고리즘' 카테고리의 다른 글
프로그래머스 - 문자열 내 p와 y의 개수 파이썬 (0) | 2022.12.21 |
---|---|
프로그래머스 - 자연수 뒤집어 배열로 만들기 파이썬 (0) | 2022.12.20 |
백준 2606 - 바이러스 파이썬 (0) | 2022.12.05 |
백준 2331 - 분해합 파이썬 (0) | 2022.12.02 |
백준 11399 - ATM 파이썬 (0) | 2022.12.01 |
댓글