012. 나누어 떨어지는 숫자 배열

4721 단어 algorithmalgorithm

문제

내 풀이 1(오답)

def solution(arr, divisor):
    answer = []
    
    for number in arr:
        if number%divisor == 0:
            answer.append(number)
            answer.sort()
        if answer == []:
            answer.append(-1)
            answer.sort()
    
    return answer
  • answer 값이 없을 경우를 for문 안에 배치해서 오류 발생

내 풀이 2(정답)

def solution(arr, divisor):
    answer = []
    
    for number in arr:
        if number%divisor == 0:
            answer.append(number)
            answer.sort()
    if answer == []:
        answer.append(-1)
        answer.sort()
    
    return answer

다른 사람 풀이

def solution(arr, divisor): return sorted([n for n in arr if n%divisor == 0]) or [-1]
  • 와우... 아직도 for문과 if문을 한 줄로 쓰는게 익숙하지 않다 좀 더 쉽게 생각해보려고 노력해야겠다

좋은 웹페이지 즐겨찾기