
문제 설명
array의 각element중divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수,solution을 작성해주세요.
divisor로 나누어 떨어지는element가 하나도 없다면 배열에-1을 담아 반환하세요.
제한 조건
arr은 자연수를 담은 배열입니다.- 정수
i,j에 대해i ≠ j이면arr[i] ≠ arr[j]입니다.divisor는 자연수입니다.array는 길이 1 이상인 배열입니다.
입출력 예
arr divisor return [5, 9, 7, 10] 5 [5, 10] [2, 36, 1, 3] 1 [1, 2, 3, 36] [3,2,6] 10 [-1]
def solution(arr, divisor):
answer = [x for x in arr if x % divisor == 0]
if not answer:
return [-1]
return sorted(answer)
🧐접근 방법
arr의 원소 중 divisor로 나누어 떨어지는 값만 list comprehension을 활용해서 리스트로 만들어줬다
🤔 한줄평
아예
answer변수를 안쓰고or을 활용하여 리턴하는 방법도 있다return sorted([x for x in arr if x % divisor == 0]) or [-1]