점점 문제가 갈수록 머리가 아픈데, 파이썬이 어떠한 방식으로 생각을 펼쳐 나가야 되는지 훈련이 되고 있는것 같다.
def solution(arr,divisor):
answer=[] # 리턴할 값을 빈 리스트로 만들고
for i in range(0,len(arr)): # 0 부터 리스트 길이 만큼 순환 시킬꺼야
if arr[i]%divisor==0: # 리스트 0번째 값을 divisor으롶 나누어 떨어지면
answer.append(arr[i]) # 기존 answer 에 그 값을 추가 해줘
else:
answer # 안나눠 떨어지면 answer 그대로 둘께/answer를 만든 작업
if len(answer)==0: # 근데 위에 추가된게 하나도 없어?
answer.append(-1) # 그러면 기존에 주어진 answer=[] 일테니까 -1 을 추가해줘!
else: # 추가된게 1개 라도 있어?
answer # 그러면 answer 그대로 냅둬
answer.sort() # 구한 answer를 오름차순으로 정리하라 했으니까 sort 하자
return answer # 모든 작업이 끝났으면 answer 로 return 해줘!
print(solution([5,9,7,10],5))
print(solution([3,2,6],10))
print(solution([2,36,1,3],1))
'Python 연습문제' 카테고리의 다른 글
제일 작은 수 제거하기-해결 완료 (0) | 2024.06.17 |
---|---|
음양 더하기 (0) | 2024.06.14 |
서울에서 김서방 찾기 (0) | 2024.06.12 |
두 정수 사이의 합 (1) | 2024.06.12 |
하샤드 수 (0) | 2024.06.11 |