-
[백준] 4948번 문제 (베르트랑 공준) 파이썬(Python) 풀이Problem Solving/Baekjoon 2021. 5. 24. 13:52
# 베르트랑 공준 def magic(num): count = 0 for i in range(num+1, 2*num): count += 1 for j in range(2, int(i**0.5)+1): if i % j == 0: count -= 1 break return count while True: n = int(input()) if n == 0: break elif n == 1: print(1) else: print(magic(n))
내가 작성한 코드
(위 글 참조)
소수 구하는 공식을 알고나니 크게 어려움은 없었다.
숫자 n이 주어지면 n+1부터 2n 사이에 있는 소수의 개수를 출력해주면 된다.
우선 제일 바깥쪽 for문을 돌때 count += 1을 해주고 소수가 아닌 수를 찾을 때마다 count -= 1을 해주어
최종적으로 출력해줬다.
주의할 점은 n이 0일때는 아무것도 출력 안 하고 1은 소수가 아니기 때문에 따로 조건을 빼준 정도가 되겠다.
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 1002번 문제 (터렛) 파이썬(Python) 풀이 (1) 2021.05.25 [백준] 9020번 문제 (골드바흐의 추측) 파이썬(Python) 풀이 (0) 2021.05.24 [백준] 1929번 문제 (에라토스테네스의 체, 소수 구하기) 파이썬(Python) 풀이 (0) 2021.05.24 [백준] 11653번 문제 (소인수분해) 파이썬(Python) 풀이 (0) 2021.05.22 [백준] 1011번 문제 (Fly me to the Alpha Centauri) 파이썬(Python) 풀이 (0) 2021.05.21