백준 BaekJoon Online Judge // 4948
2021. 1. 21. 14:10ㆍProgramming/BOJ
백준 알고리즘 BaekJoon Online Judge 4948번 "베르트랑 공준" 문제입니다.
n=250000
a = [False,False] + [True]*(n-1)
primes=[]
for i in range(2,n+1):
if a[i]:
primes.append(i)
for j in range(2*i, n+1, i):
a[j] = False
while True:
N = int(input())
if N == 0:
break
lst = [x for x in primes if N < x <= 2*N]
print(len(lst))
마찬가지로 소수 문제다. 지금 소수 파트를 다루고 있어서 그런지 소수 문제를 많이 올리게 된다.
이 문제도 마찬가지로 에라스토테네스의 체를 사용해서 푼다.
그리고 필터링으로 N초과 2*N이하의 수들을 새로운 리스트에 담은 후에 그 길이를 출력해준다.
'Programming > BOJ' 카테고리의 다른 글
백준 BaekJoon Online Judge // 1085 (0) | 2021.01.22 |
---|---|
백준 BaekJoon Online Judge // 9020 (0) | 2021.01.22 |
백준 BaekJoon Online Judge // 11653 (0) | 2021.01.21 |
백준 BaekJoon Online Judge // 2581 (0) | 2021.01.20 |
백준 BaekJoon Online Judge // 1978 (0) | 2021.01.20 |