from itertools import combinations
def solution(nums):
coms = list(combinations(nums, 3))
answer = 0
for com in coms :
num = sum(com)
count = 0
for i in range(2, num+1) :
if num % i == 0 :
count += 1
if count == 1 :
answer += 1
return answer
풀이
① combinations 함수를 사용하여 입력받은 nums에서 숫자 3개를 가져와 만들수 있는 조합을 coms에 리스트로 받는다.
② for 문을 통해 3개의 조합의 합이
➀ (2번째 for문) 2부터 자기자신까지 반복하면서 i로 나누었을때 나누어 떨어지면 count에 +1을 해준다.
➁ for문을 다 돌았을 때, 만약 count가 1이라면(나누어 떨어지는 것이 자기자신밖에 없다는 의미) 소수이므로 answer에 +1을 해준다.
'Algorithm > Programmers' 카테고리의 다른 글
[Python] 보석 쇼핑 (0) | 2021.05.11 |
---|---|
[Python] 로또의 최고 순위와 최저 순위 (0) | 2021.05.11 |
[Python] 오픈채팅방 (0) | 2021.05.07 |
[Python] 실패율 (0) | 2021.05.02 |
[Python] 다트 게임 (0) | 2021.05.01 |