Algorithm/Baekjoon

#백준 1929, 파이썬, 소수 구하기

say! 2022. 6. 30. 10:26
728x90
# 백준 기본수학2 : 1929번 - 소수 구하기

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

for i in range(m, n+1):
    for j in range(2, i+1):
        if i % j == 0:
            if j == i:
                print(i)
            break

백준에 제출했더니 시간초과났다!!!!

- 다시 제출한 코드...

# 백준 기본수학2 : 1929번 - 소수 구하기
import math

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

for i in range(m, n+1):
    if i ==1 : continue # 1은 소수가 아님

    k = math.sqrt(i)    # i**0.5로 제곱근 구하기 가능

    for j in range(2, int(k)+1):
        if i % j == 0:  #소수가 아닌 경우
            break

    else : print(i)  # 소수인 경우

제곱근까지 for문을 돌렸다.

중간에 풀면서 코드가 잘 이해가 안되어서 'Python Tutor' 라는 사이트의 도움을 받았다. (디스코드 멤버분이 알려주셨다♥)

 

 

Python Tutor: Learn Python, JavaScript, C, C++, and Java by visualizing code

Learn Python, JavaScript, C, C++, and Java This coding tutor tool helps you learn Python, JavaScript, C, C++, and Java by visualizing code execution. You can use it to debug your homework assignments and as a supplement to online coding tutorials. Related

pythontutor.com