[백준/Python] 1929 소수 구하기

재활용병·2024년 1월 17일
0

코딩 테스트

목록 보기
85/157

[백준/Python] 1929 소수 구하기


def is_prime(num):
    if num <= 1:
        return False
    if num == 2 or num == 3:
        return True
    if num % 2 == 0 or num % 3 == 0:
        return False
    i = 5
    while i*i <= num:
        if num % i == 0  or num % (i+2) == 0:
            return False
        i += 6
    return True

m, n = map(int, input().split())

result = []
for i in range(m,n+1):
    if is_prime(i):
        result.append(i)

for res in result:
    print(res)

위 문제를 해결 하기 위한 방법은 다음과 같다.

  1. m 부터 n 까지 소수인지 아닌지 판단한다.
  2. 소수임이 판단 되었으면 결과를 의미하는 result 리스트에 삽입한다.
  3. 출력한다

소수인지 아닌지 판별 is_prime(num)

def is_prime(num):
    if num <= 1:
        return False
    if num == 2 or num == 3:
        return True
    if num % 2 == 0 or num % 3 == 0:
        return False
    i = 5
    while i*i <= num:
        if num % i == 0  or num % (i+2) == 0:
            return False
        i += 6
    return True

설명은 다음 링크 참고 4134 다음 소수 문제 정답 및 설명

profile
코딩 말고 개발

0개의 댓글

관련 채용 정보