본문 바로가기
코딩테스트/프로그래머스

[Python3] 코딩테스트 입문 - 순서쌍의 개수

by tout l'été 2023. 8. 2.

코딩테스트 연습 > 코딩테스트 입문 

https://school.programmers.co.kr/learn/challenges/beginner?order=acceptance_desc&languages=python3

 


 

✔ 문제 설명

순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.

 

입출력 예

 

n result
20 6
100 9

입출력 예 설명

입출력 예 #1

  • n이 20 이므로 곱이 20인 순서쌍은 (1, 20), (2, 10), (4, 5), (5, 4), (10, 2), (20, 1) 이므로 6을 return합니다.

내가 쓴 코드

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

 

다른 사람의 풀이 

def solution(n):
    return len(list(filter(lambda v: n % (v+1) == 0, range(n))))

 

landa 활용을 잘 기억해야겠다 !

역시 코딩을 잘 하시는 분들은 정말 간결하고 함축적이구나..