본문 바로가기
알고리즘

[프로그래머스 - 소수 만들기][파이썬] -6일차

by Jyujae 2022. 5. 31.

https://programmers.co.kr/learn/challenges


--풀이

key point: combinations, 소수 구하기 로직

 

1. combinations( 순서 고려 x 인자의 중복 x)

itertools 에는 combinations, permutations 를 자주 사용하는데,

-- combinations -> 중복을 허용하지 x

[1,2,3,4]

->[1,2,3], [1,2,4], [1,3,4] [2,3,4]

 

2. permutations (순서 고려 o 인자의 중복 x)

[1,2,3,4]

->[(1, 2, 3), (1, 2, 4), (1, 3, 2), (1, 3, 4), (1, 4, 2), (1, 4, 3), (2, 1, 3), (2, 1, 4), (2, 3, 1), (2, 3,
4), (2, 4, 1), (2, 4, 3), (3, 1, 2), (3, 1, 4), (3, 2, 1), (3, 2, 4), (3, 4, 1), (3, 4, 2), (4, 1, 2), (4,
1, 3), (4, 2, 1), (4, 2, 3), (4, 3, 1), (4, 3, 2)]

 

 

3. 소수 구하기 로직

2부터 자기 자신 직전의 수(자신-1)까지 모든 수를 나눠봐서 나누어 떨어지느 수가 하나라도 있으면 소수가 x

하나도 나누어떨어지지 않으면 소수 o