NIRVANA

[level 1]나누어 떨어지는 숫자 배열 본문

Coding test(Python3)/Programmers

[level 1]나누어 떨어지는 숫자 배열

녜잉 2023. 7. 11. 00:34

문제

array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.

 

 

문제 풀이 접근법1

1) 리스트의 원소와 divisor를 나누어서 떨어진다면 answer에 해당 원소를 추가한다

2) 만약 answer의 길이가 0이라면 -1을 추가한다

3) sort()를 사용하여 오름차순으로 배열을 정렬한다

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

 


 

다른 분들 풀이

def solution(arr, divisor): return sorted([n for n in arr if n%divisor == 0]) or [-1]

list comprehension진짜 응용 가능할 때까지 계속 해봐야겠다!!

나도 코드 간결하게 짜고 싶어...

 

'Coding test(Python3) > Programmers' 카테고리의 다른 글

[level 1] 핸드폰 번호 가리기  (0) 2023.07.11
[level 1] 음양 더하기  (0) 2023.07.11
[level 1] 서울에서 김서방 찾기  (1) 2023.07.11
[level 1] 콜라츠 추측  (0) 2023.07.10
[level 1] 두 정수 사이의 합  (0) 2023.07.10