NIRVANA
[level 1]나누어 떨어지는 숫자 배열 본문
문제
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 |