프로그래머스 나누어 떨어지는 수 배열

apircity·2022년 8월 7일
0

프로그래머스

목록 보기
7/9
post-thumbnail

프로그래머스 level 1 나누어 떨어진는 수 배열

🎫 how to solve

  • 배열에 있는 숫자들을 dovisor로 나누는 과정에서 중복되는 경우가 없도록 주의해서 알고리즘을 짠다
  • 테스트 케이스에서의 시간 초과는 없었지만 만약 더 큰 수와 배열의 크기가 주어진다면 아리스토텔레스의 체를 활용하여 시간을 크게 단축시킬 수 있을 것이다

🔑 code

def solution(arr, divisor):
    answer = []
    for i, value in enumerate(arr):
        if value % divisor == 0: answer.append(arr[i])
    if not answer: return[-1]
    return sorted(answer)

🎨 code review

def solution(arr, divisor):
    answer = [] -> 정답을 반환할 변수 선언
    for i, value in enumerate(arr):
  • enumerate 함수
    -> 일반적인 출력 for문은 리스트의 원소만을 출력되지만 enumerate()를 사용한 함수에서는 0부터 시작되어 인덱스가 차례대로 출력된다
    코드를 입력하세요
    if value % divisor == 0: answer.append(arr[i]) #나누어 떨어진다면 변수에 저장
    if not answer: return[-1] ->answer.append(-1)대신 사용하여 코드를 좀 더 간결하게 표현
    return sorted(answer)

🧵 소감

원래 풀던 언어인 c로 풀려했지만 풀이 가능한 언어에 c가 있지 않아서 파이썬으로 푼 문제다
파이선에서 처음 사용해보는 함수를 직접 찾아보고 사용하여 그 쓰임새를 조금이나마 알게 되었다는 점에서 유익한 시간이였다

profile
junior developer

0개의 댓글