코딩테스트 - n의 배수

SSO·2024년 11월 13일

문제 설명

정수 num과 n이 매개 변수로 주어질 때, num이 n의 배수이면 1을 return n의 배수가 아니라면 0을 return하도록 solution 함수를 완성해주세요.


제한사항

2 ≤ num ≤ 100
2 ≤ n ≤ 9


입출력 예

num n result
98 2 1
34 3 0


입출력 예 설명

입출력 예 #1

98은 2의 배수이므로 1을 return합니다.
입출력 예 #2

32는 3의 배수가 아니므로 0을 return합니다.


개인 풀이

def solution(num, n):
if num%n == 0:
answer = 1
else :
answer = 0
return answer


다른 사람들의 풀이

  1. def solution(num, n):
    return int(not(num % n))
    - num%n은 int 값이지만, 이를 not() 함수 안에 넣으면 int가 bool로 해석되어서 num%n이 0이면 False로, 0이 아니면 True로 해석된다.

  2. def solution(num, n):
    return int(num % n == 0)

  3. def solution(num, n):
    return 1 if not num%n else 0

  4. def solution(num, n):
    return 1 if num % n == 0 else 0

  5. solution = lambda num, n : 1 if num % n == 0 else 0

  6. def solution(num, n):
    answer = 0
    if num%n==0: answer=1
    return answer


추가 설명 :
'def solution(num, n): '이란, 함수 정의를 나타낸다.
def는 함수를 정의하는 키워드이며, 함수의 이름(어떤 역할을 하는지 알 수 있다) 은 solution이다. 함수 뒤 '()'은 매개변수 혹은 인수를 나타내며, (num, n)은 num과 n이라는 두 개의 매개변수를 받는다는 것이다. 함수가 실행 시 외부에서 전달되는 값을 나타낸다.

만약 예시를 다음과 같이 둔다면, 다음과 같다.

  • 함수 solution은 두 개의 매개변수 num과 n을 받고, num이 n으로 나누어 떨어지는지 (num % n == 0) 여부를 반환하는 함수이다.

def solution(num, n):
return num % n == 0
result = solution(10, 3)
print(result) # False (10은 3으로 나누어 떨어지지 않으므로)

profile
개발자로 한걸음씩!

0개의 댓글