나누어 떨어지는 숫자 배열_프로그래머스_파이썬
나누어 떨어지는 숫자 배열
- 사전지식
- or
- or 앞에 것이 참이면 앞에게 수행이되고 거짓이면 뒤에 것이 수행된다.
[i for i in range(1,10) if i%2==0] or [-1]
[2, 4, 6, 8]
2로 나뉘어지는 숫자들이 존재해서 2,4,6,8이 출력되었다.
[i for i in range(1,10) if i%11==0] or [-1]
[-1]
11로 나누어 떨어지는 숫자가 없기 때문에 뒤에 값인 -1이 출력되었다.
나의 풀이
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]
- 고수들이 참 많다.ㅎㅎ
Comments