[프로그래머스] 소수 만들기 (Python)

Yebin Lee·2022년 7월 16일
0

코테준비

목록 보기
10/12

계절학기가 끝났다. 그렇지만 평소와 다를 것 없는 하루 ..
기분이 좋지 않다, 정말. 어제도 오늘도 아마 내일도 내일모레도 ... 힘들다

약속한 것도 있고 요 근래 너무 게으름만 피웠다. 시험도 미뤘고 ,, 벌써 방학이 2주나 지났기 때문에 더 이상 게으르게 살 수는 없다. 당장은 시험 공부가 우선인 것 같아 (두 번 미룰 수는 없으니까) 공부 시작하기 전에 아주 간단한 코딩테스트 문제를 하나 풀어봤다.


프로그래머스 [소수 만들기] 문제 보기


바로 이전에 풀었던 코딩테스트 문제가 [소수 찾기] 였던지라 더욱 쉽게, 막힘 없이 10분도 안 되어 풀었다. 풀이는 다음과 같다.


프로그래머스 [소수 만들기] 문제 풀이


from itertools import *

def solution(nums):
    answer = 0
    result = list(combinations(nums, 3))
    for i in result:
        if isPrime(sum(i)) == True:
            answer += 1
    return answer

def isPrime(num):
    for i in range(2, num):
        if num % i == 0 :
            return False
    return True

막히는 부분은 따로 없었다. 문제 제출 후 다른 사람들의 풀이를 보니 조합을 for문에서 바로 이용하는 방법도 있던데 내 코드를 다시 보니 조금 더 간단히, 파이썬스럽게 구현할 수 있었구나 라는 생각이 들었다. 또, 에라토스테네스의 체 풀이를 사용한 사람이 많아 관련 풀이에 대해 찾아서 간단히 공부해보게 되었다.


안녕 !

0개의 댓글