Languages/Python

[프로그래머스] n의 배수 고르기 (python)

genie0000 2025. 4. 24. 23:57
link icon

💻 프로그래머스 - n의 배수 고르기

👉 문제 보러 가기

 

🧩 문제 설명

n의 배수 고르기 문제

 

🧩 문제 요약

  • 정수 n과 정수 배열 numlist가 주어질 때,
    배열 numlist에서 n의 배수인 숫자들만 골라서
    새로운 배열로 반환하는 문제입니다.

 


🔍 풀이코드 1

def solution(n, numlist):
    answer = []
    for i in range(len(numlist)):
        if numlist[i] % n == 0:
            answer.append(numlist[i])
    return answer

 

🔍 풀이코드 2 (리스트 컴프리핸션 사용)

  • 주어진 리스트에서 n의 배수만 필터링
  • x % n == 0 조건을 만족하는 원소만 반환
def solution(n, numlist):
    return [x for x in numlist if x % n == 0]

 

[x for x in numlist if x % n == 0]

  • x for x in numlist: 리스트의 모든 원소를 돌면서
  • if x % n == 0: n의 배수인 경우에만 결과를 리스트에 포함

 

 


 마무리 정리

리스트 컴프리핸션 (list comprehension)

  • 리스트 컴프리헨션은 기존 리스트에서 조건을 만족하는 값들만 골라 새로운 리스트를 만들거나,
    값을 가공해서 새 리스트를 만들고 싶을 때 사용하는 짧고 간결한 문법입니다.

 

리스트 컴프리핸션 기본 문법

[표현식 for 변수 in 반복가능한_객체 if 조건]

 

리스트 컴프리핸션 예

# 1부터 10까지 중 짝수만 고르기
even_numbers = [x for x in range(1, 11) if x % 2 == 0]
print(even_numbers)  # ➜ [2, 4, 6, 8, 10]

 

 

 

 

 


📌 아직 배우는 중이라 부족한 부분이 있을 수 있습니다.
혹시 잘못된 내용이나 더 나은 방법이 있다면 알려주세요 🙏
감사합니다! 😄